结果集ResultSet
使用SELECT语句查询时,MySQL返回多行,称为结果集。
SQLyog客户端对MySQL服务器发出查询请求
MySQL服务器向SQLyog客户端返回多行查询结果数据,即查询结果集ResultSet
更改列标签
列标签(Column Label)可以手动指定结果集的列名,如:
SELECT `id` AS `学号`, `name` AS `姓名` FROM student;
对结果集排序
使用ORDER BY字句,可以让MySQL对结果排序
其中
ASC表示升序(Ascending)
DESC表示降序(Descending)
如:
SELECT*FROM student WHERE sex='1' ORDER BY id ASC,birthday DESC;
几种高级查询
范围查询
使用IN可以制定一个查询范围
示例:
SELECT* FROM student WHERE id IN('20200001','20200002','20200003');
用IN指定一个列表,凡在此列表中的则符合条件
对应的,NOT IN表示不在列表
空值查询
示例:
WHERE phone IS NULL
WHERE phone IS NOT NULL
相似查询
对于字符串字段,可以使用精确查询或相似查询
精确查询
WHERE `name`='张三';
相似查询
可以使用LIKE语句进行相似查询
WHERE `name` LIKE'%三%'
WHERE `name` LIKE'%张%'
WHERE `name` LIKE'张%三'
使用函数
对于字符串字段,可以使用精确查询或相似查询
例如:
SELECT*FROM student
WHERE YEAR(birthday)>=1980 AND YEAR(birthday)<1990
其中YEAR(birthday),就是MySQL内嵌的函数,可以求日期字段的年份
在MySQL中有几十个小函数,可以用于对字段或结果集进行简单处理
比如
//取得结果集里的最大id
SELECT MAX(id)FROM student
注:Oracle、MySQL、SQL Server各自支持的函数不同,不能通用