1、单表记录查询(查询字段名、表达式、函数、常量)
(1)查询所有的列
select对列进行查询时,‘*’表示表中所有的列
(2)查询指定的列
from后面跟表名,表示指定该表中的列
(3)查询计算的值
NOW()函数返回当前日期和时间值,YEAR()函数返回指定日期对应的年份
前面的等号是表示判断等号两边是否相等,输出逻辑值(0或1)
(4)为列取别名
AS可以省略;当自定义的别名中含有空格(如图中的'姓 名')时,必须使用单引号或双引号把别名括起来。列的别名不允许出现在WHERE子句中。
(5)不显示重复记录
查询结果中有重复记录
在select后加上distinct,可去掉重复的记录
2、使用WHERE子句过滤结果集
(1)使用关系表达式和逻辑表达式的条件查询
查询价格大于等于50、小于等于70,或者价格为82的书籍编号、书名、书的价格;
(2)使用between… and关键字的范围查询
价格在60到80之间,以及价格为82的相关信息
(3)使用IN关键字的集合查询
这里也可以是IN,NOT是可选项,括号是一个集合,集合里面的值用逗号分隔,字符型值要加单引号或双引号。
(4)使用IS NULL关键字查询空值
查询书籍编号中不为空值的的记录
所有的记录都被输出了,说明所有记录都不为空值
(5)使用LIKE关键字的字符匹配查询(模糊查询)
%可以匹配0个或多个字符的任意长度的的字符串;_表示任意单个字符
关于通配符% _的更多用法,见课本(MYSQL数据库应用教程-刘瑞新)83页
(6)使用正则表达式的查询(正则:regular expression)
匹配指定的字符串
指定多个字符串,需要用“|”符号隔开,只需匹配上任意一个字符即可
查询以特定字符或字符串开头的记录
以李或赵开头的作者名,使用“^"匹配特定字符或字符串开头的记录
用“."替代字符串中的任意一个字符
这里的”.“代表的是图中的‘利’字,$表示的是字符串的结束位置
3、对查询结果集的处理
(1)使用order by子句对查询结果的排序
ASC是升序,这里对书籍价格进行升序排序,DESC是降序
(2)限制查询结果的数量
限制查询三条记录,offset是偏移量,指定从第几条记录开始,这里是从第三条记录开始,查询三条记录。
偏移量:第一条记录的位置偏移量是0,第二条记录的位置偏移量是1.