• 1
  • 2
  • 3
  • 4
  • 5
mysql数据库问题 首 页  »  帮助中心  »  数据库  »  mysql数据库问题
MySQL基础知识点总结
发布日期:2016-4-16 20:4:8

  MySQL基础知识点总结

  在PHP开发的过程中,基本标配的数据库为MySQL。我们不用像数据库DBA那样熟悉所有关于的MySQL知识,作为一个PHP程序员我们还是要必须会MySQL基本的数据增删查改。下面PHP程序员雷雪松总结归纳一些MySQL基础知识点分享给大家。

  数据库操作

  创建数据库

  1 mysql> CREATE DATABASE dbname;

  选择数据库

  1 mysql> USE dbname;

  删除数据库

  1 mysql> DROP DATABASE dbname;

  基本的SQL语句

  增

  1 mysql> INSERT INTO TABLE_NAME (column1,column2...) VALUES (value1,value2...);//插入指定字段

  2 INSERT INTO TABLE_NAME VALUES (column1,column2...);//插入所有字段

  删

  1 mysql> DELETE FROM TABLE WHERE COLUMN=VALUE;//删除指定的记录

  改

  1 mysql> UPDATE TABLE SET column1=value1,column2=value2,... WHERE COLUMN=VALUE;//修改

  查

  1 mysql> SELECT column1,column2... FROM TABLE;//所有列为SELECT * FROM TABLE

  指定的记录一个值或者多个值

  删除时分为物理删除,逻辑删除,一般建议逻辑删除,通过一个状态字段判断是否删除。

  删改的时候一定要带where条件,

  高级SQL查询

  LIKE模糊匹配

  1、SQL通配符(LIKE和NOT LIKE)

  % 匹配0个或多个字符

  _ 匹配一个字符

  1 mysql> SELECT column1,column2... FROM TABLE WHERE COLUMN LIKE "%lei%";//模糊匹配

  2、正则模式匹配(REGEXP、NOT REGEXP和RLIKR、NOT RLIKE)

  . 匹配任何单个的字符

  * 匹配零个或多个在它前面的东西

  [charlist] 字符列中的任何单一字符[a-z][0-9]

  [^charlist] or [!charlist] 不在字符列中的任何单一字符

  1 mysql> SELECT column1,column2... FROM TABLE WHERE COLUMN RLIKR "lei*";//模糊匹配

  ORDER BY排序

  1 mysql> SELECT column1,column2... FROM TABLE WHERE ORDER BY COLUMN ASC|DESC;//字段顺序或者倒序

  LIMIT返回条数

  1 mysql> SELECT column1,column2... FROM TABLE WHERE LIMIT 5,10; // 检索记录行 6-15

  NULL处理

  IS NULL: 当列的值是NULL,此运算符返回true。

  IS NOT NULL: 当列的值不为NULL,运算符返回true。

  <=>: 比较操作符(不同于=运算符),当比较的的两个值为NULL时返回true。

  关联

  INNER JOIN(内连接或等值连接):获取两个表中字段匹配关系的记录。

  LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。

  RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。

  分组结果筛选

  HAVING

  分组查询

  GROUP BY column;//根据字段分组查询