一、基本查询语句
select ,,... ...
from ;
select字句表示想要展示的字段,from字句表示数据源来自哪个表。
select * 表示查询所有的列。
用 as 给列设置别名(不更改列名),例如表中的列名原为姓名,改为name输出:
-- 姓名字段列名以name输出select 姓名 as name from student;
用distinct删除重复值,例如删除姓名列中的重复值:
-- 删除姓名列中的重复值select distinct 姓名 from student;
如果distinct放在多列前,表示删除这些列组合后的重复值:
-- 删除学号和姓名组合列中的重复值select distinct 学号,姓名 from student;
列名的书写规则:列名不能加单引号
列名命名时不能是关键字,不能有空格
二、指定查询条件
where关键字指定查询条件,例如要查询姓名是猴子的学号和姓名:
-- 查询姓名是猴子的学号和姓名select 姓名,学号
from student
where 姓名='猴子';
SQL运行顺序:from → where → select,以上面语句举例,SQL先from定位到student表查找数据,然后where筛选出符合姓名是猴子的所有行,最后从符合条件的行中选取select指定的列。
所以需要特别注意,SQL运行顺序和书写顺序是不一致的。
三、注释
注释分为单行注释和多行注释
四、运算符
算术运算符算术运算符含义
+加法运算
-减法运算
*乘法运算
/除法运算
例如:将score的成绩除以100后,以百分比成绩命名
-- 除法运算符select 学号,成绩,
成绩/100 as '百分比成绩'
from score;
比较运算符比较运算符含义
=等于
<>不等于
>大于
>=大于等于
<=小于等于
例如:查询成绩小于60的学号和成绩
-- 查询成绩小于60的学号和成绩select 学号,成绩
from score
where 成绩<60;
例如:查询出生日期小于‘1990-01-01’的姓名和出生日期
-- 查询出生日期小于‘1990-01-01’的姓名和出生日期select 姓名,出生日期
from student
where 出生日期 < '1990-01-01';
注意:字符串的比较是按照每个字符的先后顺序进行比较的,例如字符串‘10’与‘2’比较,虽然数字10>2,但因为是字符串,首先字符‘1’会与‘2’进行比较,得出‘1’
逻辑运算符逻辑运算符含义
not否定某一条件
and并且
between范围查询
or或者
inor的简单写法
例如:查询成绩大于等于60,且小于等于90的学号和成绩
-- 查询成绩大于等于60,且小于等于90的学号和成绩select 学号,成绩
from score
where 成绩 >= 60
and 成绩 <= 90;
还可以用between+and表示范围,简化以上语句
-- 查询成绩大于等于60,且小于等于90的学号和成绩select 学号,成绩
from score
where 成绩 between 60 and 90;
例如:查询性别是男,并且姓名是猴子或者马云的学生:
-- 查询性别是男,并且姓名是猴子或者马云的学生select *
from student
where 性别 = '男'
and (姓名 = '猴子' or 姓名 = '马云');
例如:查询成绩小于60,或者大于90的学号和成绩:
-- 查询成绩小于60,或者大于90的学号和成绩select 学号,成绩
from score
where 成绩 < 60
or 成绩 > 90;
例如:查询姓名不等于猴子或马云的姓名和性别:
-- 查询姓名不等于猴子或马云的姓名和性别select 姓名,性别
from student
where 姓名 not in ('猴子','马云');
五、字符串模糊查询
关键字like表示字符串模糊查询,一般与%或_搭配使用,其中%表示任意个字符串,_表示任意1个字符串。
例1:查询姓“猴”的学生名单
-- 查询姓“猴”的学生名单select *
from student
where 姓名 like "猴%";
例2:查询姓名中最后一个字是“猴”的学生名单
-- 查询姓名中最后一个字是“猴”的学生名单select *
from student
where 姓名 like "%猴";
例3:查询姓名中带“猴”的学生名单
-- 查询姓名中带“猴”的学生名单select *
from student
where 姓名 like "%猴%";
六、sqlzoo练习题
为了巩固知识点,可以去练习平台sqlzoo自己做题,通过不断练习试错,可快速提高熟练度。SQLZOOsqlzoo.net
1、SELECT basics
2、SELECT from world