DQL
Data Query Language 数据查询语言
- 所有查询操作都用它 Select。
- 简单的查询,杂的查询它都可以做。
- 数据库中最核心的语言,最重要的语句
- 使用频率最高的语句
查询语法:select 字段,…from 表名
1.
-- 查询全部的学生
SELECT * FROM `student`
2.
-- 查询指定字段
SELECT `studentname`,`address` FROM `student`
有时候,列的名字并不是那么的见名知意,我们就可以起别名 AS(字段名 as 别名 表名 as 别名)
-- 别名,给结果起一个名字 AS ,可以给字段起别名,也可以给表起别名
SELECT `studentname` AS "学号",`address` AS "地址" FROM `student`
4.
-- 函数Concat(a,b) =>合并多个字符串
SELECT CONCAT("姓名: ",`studentname`) AS "姓名" FROM `student`
-- 函数Concat(a,b) =>合并多个字符串
SELECT CONCAT("姓名: ",`studentname`," 地址: ",`address`) AS "姓名和地址" FROM `student`
6. 去重 distinct
查询一下有哪些同学参加了考试,成绩
SELECT `studentno` FROM `result` -- 查询哪些同学参加了考试
SELECT DISTINCT `studentno` FROM `result` -- 查询哪些同学参加了考试,并去重复
7. 数据库的列(表达式)
SELECT VERSION() -- 查询系统版本(函数)
SELECT 100*3-1 AS 计算结果 -- 用来计算(表达式)
SELECT @@auto_increment_increment -- 查询自增的步长(变量)
-- 考试成绩+1分查看
SELECT `studentno`,`studentresult` FROM `result` -- 提分前
SELECT `studentno`,`studentresult`+1 AS "新成绩" FROM `result` -- 提分后
数据库中的表达式:文本值、列、Null、函数、计算表达式、系统变量…
where子句之逻辑运算符
作用:检索数据中符合条件的值
-- 查询学生考试成绩
SELECT `studentno`,`studentresult` FROM `result`
-- 查询考试成绩在 95~100之间
SELECT `studentno`,`studentresult` FROM `result`
WHERE `studentresult`>=95 AND `studentresult`<=100
-- 模糊查询 区间
SELECT `studentno`,`studentresult` FROM `result`
WHERE `studentresult` BETWEEN 95 AND 100
-- 除了1000号学生之外的同学的成绩
SELECT `studentno`,`studentresult` FROM `result`
WHERE `studentno`!=1000
SELECT `studentno`,`studentresult` FROM `result`
WHERE NOT `studentno`=1000