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.htmlhtml
使用WITH ROLLUP关键字以后,在全部查询出的分组记录以后增长一条记录,该记录计算查询出的全部记录的总和,即统计记录数量。mysql
LIMIT [位置偏移量,] 行数
第一个参数“位置偏移量”是可选参数,表示从哪一行开始显示。正则表达式
MySQL5.6中能够使用“LIMIT 4 OFFSET 3“,意思是获取从第5条记录开始后面的3条记录,和”LIMIT 4,3“返回的结果相同。sql
EXISTS关键字后面的参数是一个任意的子查询,系统对子查询进行运算以判断它是否返回行,若是至少返回一行,那么EXISTS的结果为true,此时外层查询语句将进行查询;若是子查询没有返回任何行,那么EXISTS返回的结果是false,此时外层语句将不进行查询。数据库
示范:ui
查询suppliers表中是否存在s_id=107供应商,若是存在,则查询friuts表中记录,SQL语句以下:spa
select * from fruits where exists (select s_name from suppliers where s_id=107);
示范:code
在fruits表中,查询f_name字段以字母b打头的记录,SQL语句以下:regexp
select * from fruits where f_name regexp '^b';
能够同时插入多条记录,语法:htm
insert into table_name(column_list) values(value_list1),(value_list2),...(value_listn);
本文简单的缘由是,仅写了MySQL数据库与Oracle数据库在CRUD方面不一致的地方,与Oracle一致的地方,没有写的必要了。