查询
基本查询
1 | SELECT * FROM <表名> |
*表示所有列,FROM 表示从哪个表查询
SELECT语句可以用来计算,不一定需要FROM,一般用于测试数据库连接
1 | SELECT 100+200; |
条件查询
1 | SELECT * FROM students WHERE score>=80; |
1 | SELECT * FROM <表名> WHERE <条件表达式> |
条件表达式
- <条件1> AND <条件2>
- <条件1> OR <条件2>
- NOT <条件>
投影查询
1 | SELECT 列1, 列2, 列3 FROM ... |
返回表中指定的列
排序
ORDER BY 子句加入后不按照id进行排序
1 | SELECT id, name, gender, score |
多表查询
1 | SELECT * FROM <表1> <表2> |
选择使用投影查询比较好
修改
插入
1 | INSERT INTO <表名> (字段1, 字段2, ...) VALUES (值1, 值2, ...); |
id是自增的,可以由数据库推算;有默认值的字段也可以不赋值
更新
1 | UPDATE <表名> SET 字段1=值1, 字段2=值2, ... WHERE ...; |
如果WHERE
条件没有匹配到任何记录,UPDATE
语句不会报错,也不会有任何记录被更新。
update可以没有条件,即更新所有表
1 | UPDATE students SET score=60; |
真实的数据库会返回更新的行数和where
匹配的行数
删除
1 | DELETE FROM <表名> WHERE ...; |
如果WHERE
条件没有匹配到任何记录,DELETE
语句不会报错,也不会有任何记录被删除。
UPDATE
类似,不带WHERE
条件的DELETE
语句会删除整个表的数据
DELETE
语句会返回删除的行数以及WHERE
条件匹配的行数。