一、SELECT语句基础
数据库查询是数据库的核心操作,SELECT 语句用于从数据库中选取数据。
SELECT [ALL/DISTINCT] <列名>,<列名>...
FROM <表名或视图名>,<表名或视图名>
[WHERE <条件表达式>]
[GROUP BY <列名1> [HAVING <条件表达式>]]
[ORDER BY <列名2>[ASC/DESC]];
二、单表基础查询
例1 查询所有学生的姓名,年龄
SELECT sname,sage
FROM S;
例2 查询所有学生的学号,年龄,姓名
SELECT sno 学号,sage 年龄,sname 姓名
FROM S;
!!!SELECT 中的<目标列表达式>中各个列的先后顺序不一样,执行结果的先后顺序也不一样。可以在列名后加上别名。
三、从表中选取符合条件的数据
SELECT 语句通过WHERE子句来指定查询数据的条件。在WHERE 子句中可以指定“某一列的值和这个字符串相等”或者“某一列的值大于这个数字”等条件。执行含有这些条件的SELECT语句,就可以查询出只符合该条件的记录了。
例3:查询专业为‘CS’的学生的信息
SELECT *
FROM S
WHERE sdept='CS';
!!!!!!!!!!!!!!!!!!!!!!!!!!!
- 星号(*)代表全部列的意思。
- SQL中可以随意使用换行符,不影响语句执行(但不可插入空行)。
四、算术运算符和比较运算符
SQL语句中可使用的四则运算部分运算符:
含义 | 运算符 |
---|---|
加法 | + |
减法 | - |
乘法 | * |
除法 | / |
SQL中常见的比较运算符:
运算符 | 含义 |
---|---|
= | 和~相等 |
<> | 和~不相等 |
>= | 大于等于~ |
> | 大于~ |
<= | 小于等于~ |
< | 小于~ |
例4:查询年龄大于19岁的同学的个人信息。
SELECT *
FROM S
WHERE sage>19;
- SELECT子句中可以使用常数或者表达式。
- 使用比较运算符时一定要注意不等号和等号的位置。
- 字符串类型的数据原则上按照字典顺序进行排序,不能与数字的大小顺序混淆。
五、逻辑运算符
NOT运算符
例5:查询年龄大于19岁的同学的个人信息
SELECT *
FROM S
WHERE NOT sage<=19;
通过例5和例4的比较,我们可以清楚的了解NOT运算符的作用。
AND运算符和OR运算符
例6:查询年龄等于19岁的男同学的个人信息
SELECT *
FROM S
WHERE sage=19 AND ssex='男';
例7:查询年龄为19岁的和性别为男的学生信息
SELECT *
FROM S
WHERE sage=19 OR ssex='男';