![36126d82d7d4cadeefcca973940d5480.png](https://img-blog.csdnimg.cn/img_convert/36126d82d7d4cadeefcca973940d5480.png)
大纲:
一、基本的查询语句
二、指定查询条件
三、注释和SQL语句注意事项
四、运算符
五、谓词
![8d2400be9f2475136a3655735436d0b0.png](https://img-blog.csdnimg.cn/img_convert/8d2400be9f2475136a3655735436d0b0.png)
一、基本的查询语句
从表中选取数据时需要使用select语句,也就是只从表中选出(select)必要数据的意思。通过select语句查询并选取出必要数据的过程,称为匹配查询或查询(query)。
1.如何查找出所有数据?
星号(*):查询出全部列
select
![180a307398e872c60e1ceec1576609b7.png](https://img-blog.csdnimg.cn/img_convert/180a307398e872c60e1ceec1576609b7.png)
2.如何为列设定别名?
as:为列设定别名
select
选中sql→运行已选择的:
![0843527249ec398cebe08eed9c3ca49e.png](https://img-blog.csdnimg.cn/img_convert/0843527249ec398cebe08eed9c3ca49e.png)
3.如何从查询结果中删除重复行?
distinct:删除重复数据
select
![40f990a1996a241c1c861ce8c3e021f7.png](https://img-blog.csdnimg.cn/img_convert/40f990a1996a241c1c861ce8c3e021f7.png)
4.SQL的书写规则是什么?
SQL书写规则:
(1)SQL语句以英文分号(;)结尾;
(2)SQL语句不区分关键字的大小写,关键字为查询编辑器里的蓝色字,如select;
![eaf56ae238f42a8115a328421d36f307.png](https://img-blog.csdnimg.cn/img_convert/eaf56ae238f42a8115a328421d36f307.png)
(3)列名不能加单引号,列名命名时不能有空格;
(4)输入符号的时候只能使用英文符号。
二、指定查询条件
1.如何指定查询条件?
select <列名>,<列名>,……
from <表名>
where <查询条件>;
选取“姓名”列里值为“结缔”的行:
select
![d7342acbda0ca901a9c80b8381b2b286.png](https://img-blog.csdnimg.cn/img_convert/d7342acbda0ca901a9c80b8381b2b286.png)
2.SQL是如何运行的?
(1)SQL的书写顺序:
①select <列名>,<列名>,……
②from <表名>
③where <查询条件>;
(2)SQL的运行顺序:
①from <表名> →from从哪张表中查找数据
②where <查询条件> →where查询出符合条件的行
③select <列名>,<列名>,…… →从查询中的行中,选取出select语句指定的列
三、注释和SQL语句注意事项
1.什么是注释?
注释,是SQL语句中用来标识说明或者注意事项的部分。注释对SQL的执行没有任何影响。
注释的书写方法有两种:
(1)单行注释,书写在“--”之后,只能写在同一行。
![213ae27c965faa71dd028ff2d73e331c.png](https://img-blog.csdnimg.cn/img_convert/213ae27c965faa71dd028ff2d73e331c.png)
(2)多行注释,书写在“/*”和“*/”之间,可以跨多行。
![4ecbae5853d79c7163c65d4973d675aa.png](https://img-blog.csdnimg.cn/img_convert/4ecbae5853d79c7163c65d4973d675aa.png)
2.常见的SQL错误如何避免?
SQL语句之间不能空一行;输入符号的时候只能使用英文符号,不能用中文符号,不然会报错。
四、运算符
运算符,就是对其两边的列或者值进行运算(计算或者比较大小等)的符号。
1.什么是算术运算符?
四则运算所使用的运算符(+、-、*、/),称为算术运算符。
![476db6d2ff04fce7954f45919669ce67.png](https://img-blog.csdnimg.cn/img_convert/476db6d2ff04fce7954f45919669ce67.png)
/运算符:
select
![0503632acaf5ee5ecf0379c8ec5e08fd.png](https://img-blog.csdnimg.cn/img_convert/0503632acaf5ee5ecf0379c8ec5e08fd.png)
2.什么是比较运算符?
像符号=这样用来比较其两边的列或者值的符号称为比较运算符,符号=就是比较运算符。
![9c24798d5a0575202d6e0aa285a3841f.png](https://img-blog.csdnimg.cn/img_convert/9c24798d5a0575202d6e0aa285a3841f.png)
(1)复杂查询
=运算符:
select
![555102a4ad069ab07e980d69f9cdb87d.png](https://img-blog.csdnimg.cn/img_convert/555102a4ad069ab07e980d69f9cdb87d.png)
<运算符:
select
![5c8fb2775ee24bb227c3e18ca2f9bb4c.png](https://img-blog.csdnimg.cn/img_convert/5c8fb2775ee24bb227c3e18ca2f9bb4c.png)
>运算符:
select
![0e46039d9d05bd29c7bf9f69a38505a4.png](https://img-blog.csdnimg.cn/img_convert/0e46039d9d05bd29c7bf9f69a38505a4.png)
(2)字串符比较规则:
在对字符串类型的数据进行大小比较时,使用的是和数字比较不同的规则。原则上按照字典顺序进行排序,不能与数字的大小顺序混淆。比如,’10’<’2’,因为以’1’开头的字串符比’2’小。
(3)如何查询出null值?
①不能对null使用比较运算符。
②希望选取null记录时,需要在条件表达式中使用is null运算符;
③希望选取不是null的记录时,需要在条件表达式中使用is not null运算符。
null:
select
![0b952990779dbc706a1562d388087a1a.png](https://img-blog.csdnimg.cn/img_convert/0b952990779dbc706a1562d388087a1a.png)
不是null:
select
![526422475133a084e673bb2e74fe0298.png](https://img-blog.csdnimg.cn/img_convert/526422475133a084e673bb2e74fe0298.png)
3.什么是逻辑运算符?
not、and和or这三个运算符,称为逻辑运算符。通过使用逻辑运算符,可以将多个查询条件进行组合。
not运算符用来否定某一条件,通过not运算符可以生成“不是”的查询条件;
and运算符在其两侧的查询条件都成立时整个查询条件才成立,其意思相当于“并且”;
or运算符在其两侧的查询条件有一个成立时整个查询条件都成立,其意思相当于“或者”。
![0666837329fed46c49454a134c6e10ee.png](https://img-blog.csdnimg.cn/img_convert/0666837329fed46c49454a134c6e10ee.png)
not运算符:
select
![915aef78e5d7a57ef8db77720ad98612.png](https://img-blog.csdnimg.cn/img_convert/915aef78e5d7a57ef8db77720ad98612.png)
and运算符:
select
![6e717092923c559d9276943a9541aafc.png](https://img-blog.csdnimg.cn/img_convert/6e717092923c559d9276943a9541aafc.png)
or运算符:
select
![13f87d77c1d7f8f2436050e50b9a69ac.png](https://img-blog.csdnimg.cn/img_convert/13f87d77c1d7f8f2436050e50b9a69ac.png)
in运算符:
select
相当于:
select
![273a1ac903798f7073176df4af9566d5.png](https://img-blog.csdnimg.cn/img_convert/273a1ac903798f7073176df4af9566d5.png)
注意:用=的时候才能用in运算符代替or运算符。
五、谓词
1.如何进行模糊查询?
字符串模糊查询:like
(1)%表示任意字符串:
①结%
select
![15ce42d656ae653cc4f36a3187abf8e3.png](https://img-blog.csdnimg.cn/img_convert/15ce42d656ae653cc4f36a3187abf8e3.png)
②%巴
select
![f7f850f1da3f803687a74effac7fbd75.png](https://img-blog.csdnimg.cn/img_convert/f7f850f1da3f803687a74effac7fbd75.png)
③%杨%
select
![e1e0b95dd3c8ab72c804badc111ecb49.png](https://img-blog.csdnimg.cn/img_convert/e1e0b95dd3c8ab72c804badc111ecb49.png)
(2)_1个下划线表示任意1个字符:(下面的sql是两个下划线)
select
![83e65992bf25a2621b075a4087bb17c3.png](https://img-blog.csdnimg.cn/img_convert/83e65992bf25a2621b075a4087bb17c3.png)
2.练习题:SQLZOO
![cfa61ebff1f59abe0a222be2f9f5e50b.png](https://img-blog.csdnimg.cn/img_convert/cfa61ebff1f59abe0a222be2f9f5e50b.png)
表:(图片未显示全部列)
![7f370dc46013096cda10762c2724e084.png](https://img-blog.csdnimg.cn/img_convert/7f370dc46013096cda10762c2724e084.png)
详情看:
结缔:刷完这些SQL练习题,简单查询就熟能生巧了zhuanlan.zhihu.com![94573d27b705a1575746985d26637651.png](https://img-blog.csdnimg.cn/img_convert/94573d27b705a1575746985d26637651.png)
六、总结
一、基本的查询语句
从表中选取数据时需要使用select语句,也就是只从表中选出(select)必要数据的意思。通过select语句查询并选取出必要数据的过程,称为匹配查询或查询(query)。
1.如何查找出所有数据? 星号(*):查询出全部列
2.如何为列设定别名? as:为列设定别名
3.如何从查询结果中删除重复行? distinct:删除重复数据
4.SQL的书写规则是什么?
(1)SQL语句以英文分号(;)结尾;
(2)SQL语句不区分关键字的大小写,关键字为查询编辑器里的蓝色字,如select;
(3)列名不能加单引号,列名命名时不能有空格;
(4)输入符号的时候只能使用英文符号。
二、指定查询条件
1.如何指定查询条件?
select <列名>,<列名>,……
from <表名>
where <查询条件>;
2.SQL是如何运行的?
(1)SQL的书写顺序:
①select <列名>,<列名>,……
②from <表名>
③where <查询条件>;
(2)SQL的运行顺序:
①from <表名> →from从哪张表中查找数据
②where <查询条件> →where查询出符合条件的行
③select <列名>,<列名>,…… →从查询中的行中,选取出select语句指定的列
三、注释和SQL语句注意事项
1.什么是注释?
注释,是SQL语句中用来标识说明或者注意事项的部分。注释对SQL的执行没有任何影响。
注释的书写方法有两种:
(1)单行注释,书写在“--”之后,只能写在同一行。
(2)多行注释,书写在“/*”和“*/”之间,可以跨多行。
2.常见的SQL错误如何避免?
(1)SQL语句之间不能空一行;
(2)输入符号的时候只能使用英文符号,不能用中文符号,不然会报错。
四、运算符
![90e461a9d1a36f521cd7030dcd376ae5.png](https://img-blog.csdnimg.cn/img_convert/90e461a9d1a36f521cd7030dcd376ae5.png)
- 字串符比较规则:
在对字符串类型的数据进行大小比较时,使用的是和数字比较不同的规则。原则上按照字典顺序进行排序,不能与数字的大小顺序混淆。比如,’10’<’2’,因为以’1’开头的字串符比’2’小。
- 如何查询出null值?
①不能对null使用比较运算符。
②希望选取null记录时,需要在条件表达式中使用is null运算符;
③希望选取不是null的记录时,需要在条件表达式中使用is not null运算符。
五、谓词
1.如何进行模糊查询?字符串模糊查询:like
(1)%表示任意字符串
(2)_1个下划线表示任意1个字符
2.练习题:SQLZOO