在PHP开发的过程中,基本标配的数据库为MySQL。我们不用像数据库DBA那样熟悉所有的MySQL知识,作为一个PHP程序员我们还是必须会MySQL基本的数据增删查改。下面PHP程序员雷雪松总结归纳一些MySQL基础知识点分享给大家。
数据库操作
创建数据库
mysql>CREATEDATABASEdbname;
删除数据库
mysql>DROPDATABASEdbname;
选择数据库
mysql>USEdbname;
基本的SQL语句
增
mysql>INSERTINTOTABLE_NAME(column1,column2…)VALUES(value1,value2…);//插入指定字段
INSERTINTOTABLE_NAMEVALUES(column1,column2…);//插入所有字段
删
mysql>DELETEFROMTABLEWHERECOLUMN=VALUE;//删除指定的记录
查
mysql>SELECTcolumn1,column2…FROMTABLE;//所有列为SELECT*FROMTABLE
改
mysql>UPDATETABLESETcolumn1=value1,column2=value2,…WHERECOLUMN=VALUE;//修改
指定的记录一个值或多个值
删改的时候一定要带where条件,
删除时分为物理删除,逻辑删除,一般建议逻辑删除,通过一个状态字段判断是否删除。
高级SQL查询
LIKE模糊匹配
1、SQL通配符(LIKE和NOT LIKE)
% 匹配0个或多个字符
_ 匹配一个字符
mysql>SELECTcolumn1,column2…FROMTABLEWHERECOLUMNLIKE”%lei%”;//模糊匹配
2、正则模式匹配(REGEXP、NOT REGEXP和RLIKR、NOT RLIKE)
. 匹配任何单个的字符
* 匹配零个或多个在它前面的东西
[charlist] 字符列中的任何单一字符[a-z][0-9]
[^charlist] or [!charlist] 不在字符列中的任何单一字符
mysql>SELECTcolumn1,column2…FROMTABLEWHERECOLUMNRLIKR”lei*”;//模糊匹配
ORDER BY排序
mysql>SELECTcolumn1,column2…FROMTABLEWHEREORDERBYCOLUMNASC|DESC;//字段顺序或者倒序
LIMIT返回条数
mysql>SELECTcolumn1,column2…FROMTABLEWHERELIMIT5,10;//检索记录行6-15
NULL处理
IS NULL: 当列的值是NULL,此运算符返回true。
IS NOT NULL: 当列的值不为NULL,运算符返回true。
<=>: 比较操作符(不同于=运算符),当比较的的两个值为NULL时返回true。
关联
INNER JOIN(内连接或等值连接):获取两个表中字段匹配关系的记录。
LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。
RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。
分组查询
GROUP BY column;//根据字段分组查询
分组结果筛选
HAVING
标签:MySQL数据库