本篇将会介绍 MySQL 中的各种查询语句,主要使用的数据表结构如下:
它们分别是:
- 部门表(department),包含部门编号(dept_id)和部门名称(dept_name)字段,主键为部门编号。该表共计 6 条数据。
- 职位表(job),包含职位编号(job_id)和职位名称(job_title)字段,主键为职位编号。该表共计 10 条数据。
- 员工表(employee),包含员工编号(emp_id)和员工姓名(emp_name)等字段,主键为员工编号,部门编号(dept_id)字段是引用部门表的外键,职位编号(job_id)字段是引用职位表的外键,经理编号(manager)字段是引用员工表自身的外键。该表共计 25 条数据。
可以点击下载创建数据表和生成示例数据的脚本,执行这些脚本完成相关的初始化操作。
简单查询
查询指定字段
在 MySQL 中,使用 SELECT 语句查询表中的数据。基本的查询语法如下:
SELECT col1, col2
FROM table_name;
其中,SELECT 表示要查询的字段或者表达式;FROM 表示从哪个表中查询;它们都是关键字,SQL 不区分大小写,但是一般关键字大写;最后的分号(;)表示语句的结束。
例如,以下查询语句返回了员工的姓名和年薪(月薪乘以 12):
SELECT emp_name, salary * 12
FROM employee;
emp_name|salary * 12|
---------|-----------|
刘备 | 360000.00|
关羽 | 312000.00|
张飞 | 288000.00|
...
查询全部字段
查询表中全部字段的第一个方法就是在 SELECT 列表中写上所有的字段。例如,以下语句返回了员工表中的所有字段:
SELECT emp_id, emp_name, sex, dept_id, manager, hire_date, job_id, salary, bonus, email
FROM employee;
emp_id| emp_name| sex|dept_id|manager|hire_date |job_id|salary |bonus |email |
------|---------|----|-------|-------|----------|------|--------|--------|------------------------|
1|刘备 |男 | 1| |2000-01-01| 1|30000.00|10000.00|[email protected] |
2|关羽 |男 | 1| 1|2000-01-01| 2|26000.00|10000.00|[email protected] |
3|张飞 |男 | 1| 1|2000-01-01| 2|24000.00|10000.00|[email protected] |
...
另一个方法就是使用星号(*)表示全部字段。例如,以上语句也可以写成:
SELECT *
FROM employee;
MySQL 在解析该语句时,会自动将星号扩展为表中的所有字段名。
⚠️星号可以便于快速编写查询语句,但是在实际项目中不要使用这种写法。一方面,应用程序可能并不需要所有的字段,避免返回过多的无用数据;另一方面,当表结构发生变化时,星号返回的信息也会发生改变。
标签:语句,name,查询,emp,MySQL,DQL,查询语言,id,SELECT From: https://www.cnblogs.com/xfeiyun/p/16962123.html