1.select查询单表中所有数据
select * from product
2.查询表中某列不重复的数据
select DISTINCT dir_id from product
3.实现数学运算查询
- 对NUMBER型数据可以使用算数操作符创建表达式(+ - * /)
- 对DATE型数据可以使用部分算数操作符创建表达式 (+ -)
SELECT 5*7
4.设置列名的别名
需求:查询所有货品的id,名称,各进50个,并且每个运费1元的成本(使用别名)
select id,productname,50*(costPrice+1) price from product
5.设置显示格式
需求:查询商品的名字和零售价。格式:xxx商品的零售价为:xxx
select CONCAT(productName,"商品的零售价为:",salePrice) from product
6.比较运算符
7.逻辑运算
8.优先级规则
9.范围查询-BETWEEN AND
需求:选择id,货品名称,批发价在300-400之间的货品
select id,productname,salePrice*cutoff from product where salePrice*cutoff between 300 and 400
10.集合查询- IN
需求:选择id,货品名称,分类编号为2,4的所有货品。
select id,productname from product where dir_id in (2,4)
11.空值查询 IS NULL
语法:WHERE 列名 IS NULL;
12.模糊查询 LIKE
- %:通配符:可表示零或多个任意的字符。
- _:通配符:可表示任意的一个字符。
13.正则表达式
14.结果排序
ASC : 升序,缺省–不写默认。
DESC: 降序。
ORDER BY 语句出现在SELECT语句的最后。
15.分页查询 LIMIT
分页设计:
假分页(逻辑分页): 把数据全部查询出来,存在于内存中,翻页的时候,直接从内存中去截取.
真分页(物理分页): 每次翻页都去数据库中去查询数据.
假分页: 翻页比较快,但是第一次查询很慢,若数据过大,可能导致内存溢出.
真分页: 翻页比较慢,若数据过大,不会导致内存溢出.
SELECT * FROM table_name LIMIT ?,?;//第一个?: 表示本页,开始索引(从0开始).第二个?: 每页显示的条数
16.聚集函数
- COUNT:统计结果记录数 如果列的值为null 不会计算在内的
- MAX: 统计计算最大值
- MIN: 统计计算最小值
- SUM: 统计计算求和
- AVG: 统计计算平均值 如果列的值为null 不会计算在内的
17.分组查询 GROUP BY
语法格式:
SELECT 聚集函数或者分组的列
FROM table_name
WHERE 条件
GROUP BY 列名
HAVING 分组之后的条件;
注意:
- GROUP BY 后面的列名的值要有重复性分组才有意义;
- 使用HAVING字句,对分组之后的结果作筛选;
- 不能在 WHERE 子句中使用组函数(注意);
- 可以在 HAVING 子句中使用组函数;