1.select语句
(1)语法
SELECT *|{[DISTINCT] column|expression [alias],...} FROM table;
(2)示例:
选择全部列
SELECT * FROM departments;
选择特定列
SELECT department_id, location_id FROM departments;
(3)注意
SQL 语言大小写不敏感。
SQL 可以写在一行或者多行
关键字不能被缩写也不能分行
各子句一般要分行写。
使用缩进提高语句的可读性。
2. 运算符 空值
(1)数字和日期使用的算术运算符: + - * /
优先级
乘除的优先级高于加减。
同一优先级运算符从左向右执行。
括号内的运算先执行。
SELECT last_name, salary, 12*(salary+100) FROM employees;
(2)空值
空值即为空。
空值是无效的,未指定的,未知的或不可预知的值
空值不是空格或者0。
空值的运算: 包含空值的数学表达式的值都为空值
若commission_pct为空,则 12*salary*commission_pct也为空
SELECT last_name, 12*salary*commission_pct FROM employees;
3.列的别名
使用别名的目的:重命名,简化名称,方便计算
使用别名的三种方式:
(1)紧跟列名
SELECT last_name , commission_pct comm FROM employees;
(2)as
SELECT last_name AS name, commission_pct comm FROM employees;
(3)" "
SELECT last_name "Name", salary*12 "Annual Salary" FROM employees;
4.连接符: ||
(1)作用:把列与列,列与字符连接在一起,可以用来‘合成’列。
SELECT last_name||job_id AS "Employees" FROM employees;
结果:
5.字符串
字符串可以是 SELECT 列表中的一个字符,数字,日期。
日期和字符只能在单引号中出现。
每当返回一行时,字符串被输出一次
SELECT last_name ||' is a '||job_id AS "Employee Details" FROM employees;
结果:
6.去重:DISTINCT
默认情况下,查询会返回全部行,包括重复行。
作用: 在 SELECT 子句中使用关键字 ‘DISTINCT’ ,可以删除重复行。
SELECT DISTINCT department_id FROM employees;
7.显示表结构: DESCRIBE
DESC[RIBE] tablename