基础查询
语法:
select 查询列表 from 表名;
特点:
- 查询列表可以是表中的字段、常量值、表达式、函数。
- 查询的结果是一个虚拟的表格,是临时性的。
1、查询表中的单个字段
SELECT last_name FROM employees;
2、查询表中的多个字段
SELECT last_name, salary, email FROM employees;
3、查询表中的所有字段
SELECT * FROM employees;
细节注意:
- 查询前使用 USE 关键字进入某个数据库
- 着重号,`,用来区分字段和关键字,加上着重号代表这是一个字段
- 在图形化用户界面中,可以用鼠标选中一部分来执行
4、查询常量值
SELECT 100;
SELECT 'john';
5、查询表达式
SELECT 100*98;
SELECT 100%98;
显示:
6、查询函数
SELECT VERSION();
显示:
7、起别名
方式一:使用AS
SELECT 100%98 AS 结果;
SELECT last_name AS 姓, first_name AS 名 FROM employees;
显示:
方式二:使用空格
SELECT 100%98 结果;
SELECT last_name 姓, first_name 名 FROM employees;
8、去重
案例:查询员工表中涉及到的所有部门编号
SELECT DISTINCT department_id FROM employees;
9、+号的作用
java中+号的作用:
-
作为运算符(两个操作数都是数值型)。
-
作为连接符(两个操作有一个为字符串类型)。
mysql中+号的作用:
- 只能作为运算符,两个操作数为数值类型,则做加法运算;
SELECT 100+90; #输出 190
- 若其中一个操作数为字符型,试图将字符型转换为数值型进行运算
SELECT '100' + 90; #输出190
- 如果转换失败,当作0进行运算;
SELECT 'JOHN' + 90; #输出90
- 若其中一个操作数为null,则结果一定为null
SELECT null + 90; //输出null
连接字符串:CONCAT
SELECT CONCAT('a', 'b', 'c') AS 结果;
输出:
案例:查询员工名和姓连接成一个字段,并显示为 姓名:
SELECT CONCAT(first_name, last_name) AS 姓名 FROM employees;
10、IFNULL()函数
功能:判断某字段或表达式是否为 NULL 值,如果为 NULL,返回指定的值,否则返回原本的值。
SELECT IFNULL(commission_pct, 0) FROM employees;
11、ISNULL()函数
功能:判断值是否为 NULL
SELECT ISNULL(commission_pct), commission_pct FROM employees;
SELECT * FROM employees WHERE ISNULL(commission_pct);