基本的SELECT语句
薛定谔see猫 2022/1/3 数据库MySQL
# 1. 最基本的使用
# 1.1 SELECT FROM
SELECT 字段1, 字段2, ... FROM 表名
SELECT 1 + 1, 3 + 2;
DUAL
伪表
SELECT 1 + 1, 3 + 2 FROM DUAL;
# 1.2 列的别名
SELECT 字段 AS 别名 FROM 表名
SELECT employee_id emp_id FROM employees;
上述sql
的含义就是将employee_id
命名为emp_id
,AS
可省略。
列的别名也可以使用""
引起来
SELECT employee_id "employee id" FROM employees;
# 1.3 去除重复行
查询员工表中所有的部门号,因为不同的员工可以有相同的员工号,使用DISTINCT
关键字去重即可
SELECT DISTINCT department_id FROM employees;
# 1.4 空值参与运算
空值表示为null
,它不等同与0
、''
、'null'
。
如果空值参与运算,结果为null
查询员工的月工资和奖金率
SELECT
employee_id, salary * (1 + commission_pct) "月工资", commission_pct
FROM
employees;
可以使用IFNULL()
来替换null
SELECT
employee_id, salary * (1 + IFNULL(commission_pct, 0)) "月工资", commission_pct
FROM
employees;
# 1.5 着重号
有一些表名,字段名与关键字相同就需要使用着重号引起来,比如查询订单表(ORDER
是一个关键字)
SELECT * FROM `order`;
# 1.6 查询常数
增加一个常数列,员工id本身并不在employees
表中
SELECT '员工id', employee_id FROM employees;
# 2. 显示表结构
查询员工表的结构
DESCRIBE employees;
# 或者
DESC employees;
# 3. 过滤数据
查询90号部门的员工信息
SELECT * FROM employees WHERE department_id = 90;