MySQL 5.6学习笔记(查询数据、插入、更新、删除数据)

1. 查询语法

SELECT
    {*|<字段列表>}
    [FROM table_references
    [WHERE where_condition]
    [GROUP BY {col_name | expr | position}
      [ASC | DESC], ... [WITH ROLLUP]]
    [HAVING where_condition]
    [ORDER BY {col_name | expr | position}
      [ASC | DESC], ...]
    [LIMIT {[offset,] row_count | row_count OFFSET offset}]

上面的常用的基本的查询语法。完整语法参考:http://dev.mysql.com/doc/refman/5.6/en/select.html

1.1 在GROUP BY子句中使用WITH ROLLUP

使用WITH ROLLUP关键字之后,在所有查询出的分组记录之后增加一条记录,该记录计算查询出的所有记录的总和,即统计记录数量。

1.2 使用LIMIT限制查询结果的数量

LIMIT [位置偏移量,] 行数

第一个参数“位置偏移量”是可选参数,表示从哪一行开始显示。

MySQL5.6中可以使用“LIMIT 4 OFFSET 3“,意思是获取从第5条记录开始后面的3条记录,和”LIMIT 4,3“返回的结果相同。

1.3 带EXISTS关键字的查询

EXISTS关键字后面的参数是一个任意的子查询,系统对子查询进行运算以判断它是否返回行,如果至少返回一行,那么EXISTS的结果为true,此时外层查询语句将进行查询;如果子查询没有返回任何行,那么EXISTS返回的结果是false,此时外层语句将不进行查询。

示范:

查询suppliers表中是否存在s_id=107供应商,如果存在,则查询friuts表中记录,SQL语句如下:

select * from fruits
    where exists
    (select s_name from suppliers where s_id=107);

1.4 使用正则表达式查询

示范:

在fruits表中,查询f_name字段以字母b打头的记录,SQL语句如下:

select * from fruits where f_name regexp '^b';

2. 插入数据

可以同时插入多条记录,语法:

insert into table_name(column_list)
    values(value_list1),(value_list2),...(value_listn);

本文简单的原因是,仅写了MySQL数据库与Oracle数据库在CRUD方面不一致的地方,与Oracle一致的地方,没有写的必要了。

原文地址:https://www.cnblogs.com/nayitian/p/3419555.html