1、基本的SQL
1.0 最基本的 SELECT 语句
SELECT 1;
SELECT 1 + 1,3 * 3;
SELECT *全部列 FROM xxx表名
SELECT
想要查询的列名
FROM
表名 D
这种SQL就是只在前面加一个 SELECT 关键字,然后做结果查询。
一些规则
一般情况下,除非需要使用表中所有的字段数据,最好不要使用通配符‘*’。使用通配符虽然可以节省输入查询语句的时间,但是获取不需要的列数据通常会降低查询和所使用的应用程序的效率。通配符的优势是,当不知道所需要的列的名称时,可以通过它获取它们。 在生产环境下,不推荐你直接使用 SELECT * 进行查询。
MySQL中的SQL语句是不区分大小写的,因此SELECT和select的作用是相同的,但是,许多开发人 员习惯将关键字大写、数据列和表名小写,学习使用的时候应该养成一个良好的编程习惯,这样写出来的代码更容易阅读和维护。
1.1 列别名
查询SQL 执行后,返回的结果数据就是 结果集
在查询操作后,返回的结果集中的列名就是表中的字段名,如果想让它换一个名字,就能在SQL中添加别名再执行SQL,这样返回的结果集中的列名就是自己起的这个列名对应的别名。
SELECT hire_date AS 生日, phone_number 电话号,salary "薪水"
FROM employees;
-
关键字AS:alias(别名),可以省略
-
重命名一个列
-
便于计算
-
紧跟列名,也可以在列名和别名之间加入关键字AS,别名使用双引号,以便在别名中包含空格或特 殊的字符并区分大小写。
-
建议别名简短,见名知意
1.2 去除重复行
在一张表的某一个列中有很多相同的值存在,如果需要知道这个列中有几种值,则可以通过去重关键字 DISTINCT
对这个列进行查询去重操作
SELECT DISTINCT department_id "部门编号"
FROM employees;
注意
DISTINCT
需要放在所有列名的前面。- 如果添加了
DISTINCT
关键字后,他会对后面所有列明查询返回的结果集做去重操作。使用时要考虑好场景,如果一个列有5中不同的记录,一个列有12中不同的记录,这两个列被一起去重查询,返回的就会有相同的值在里面,这样的操作没什么意义
1.3 空值参与运算
所有运算符或列值遇到null值,运算的结果都为null