SQL语句学习

查询

基本查询

表中所有行和所有列的数据

SELECT * FROM <tableName>

条件查询(where)

表中score大于80的信息

SELECT * FROM <tableName> WHERE score >= 80(条件表达式);

// WHERE 搭配 AND、 OR、 NOT

排序

// 放在WHERE语句后
// 正序 从小到大 (默认不写的话, 以ID排序)
ORDER BY score(某一属性) ;
// 倒序 
ORDER BY score(某一属性) DESC;
// 组合排序 (先score倒序, 再age正序)
ORDER BY score(某一属性) DESC, age;

分页查询

// 一页不超过三行数据,第一页
LIMIT 3 OFFSET 0

聚合查询

// 查询students表中共有多少条记录
SELECT COUNT(*) FROM students;

// 还有 SUM AVG MAX MIN
// SUM AVG 必须为number
// 计算单位为某一列

分组

// GROUP BY
SELECT COUNT(*) num FROM students GROUP BY class_id;

多表查询

SELECT * FROM students,classes;

多表查询会产生M*N行数据

设置别名

// boys 为COUNT(*) 的别名
SELECT COUNT(*) boys FROM students WHERE gender = 'M';
// 给students 表 设置 别名s
SELECT  s.name from students s WHERE gender = 'M'

连接查询(特殊的多表查询)

SELECT s.id, s.name, s.class_id, c.name class_name, s.gender, s.score
FROM students s
INNER JOIN classes c
ON s.class_id = c.id;

快照

-- 对class_id=1的记录进行快照,并存储为新表students_of_class1:
CREATE TABLE students_of_class1 SELECT * FROM students WHERE class_id=1;

转载于:https://www.cnblogs.com/lmx093418/p/9984642.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值