例1:检索所有列
select * from employees;--注:* 选择所有字段,列的顺序一般(但并不总是)是列在表定义中出现的物理顺序。但检索不必要的列会降低性能。
例2:检索多个列
select last_name,salary
from employees;
例3:算术表达式。使用算术运算符(+ - * /)创建数字和日期表达式。
select last_name,salary,salary+300
from employees;--注:salary 字段是数字格式。salary+300 只是用于显示的列。列名来自计算公式。
select last_name,salary,12*salary+100
from employees;
select last_name,salary,12*(salary+100)
from employees;
例4: 空值NULL--不可用、未分配、未知或不适用的值。
行的某一列没有数据值,该值为空或包含空值。空值不同于零或空格。
包含空值的算术表达式的值为空。
以空值作为除数,值仍为空。以0为除数,会出现错误。
例5:定义列别名
select last_name as name,commision comm
from employees;
select last_name "Name",salary*12 "Annual salary"
from employees;
--注:as 可有可没有。 区分大小写,有空格或特殊字符,需用双引号。
例6:连接运算符 “||”
select last_name||job_id as "Employees"
from employees;
select last_name||' is a'||job_id AS "Employee Details"
from employees; -- 文字字符串(文字指包含在select列表中的字符、数字和日期),字符和日期必须包含在单引号内
select last_name||': 1 Month salary='||salary Montly
from employees;
例7:去掉重复行
select DISTINCT department_id
from employees;
select DISTINCT department_id,job_id
from employees;--注:DISTINCT 限定符将影响所有选择的列。结果是列的每个不同组合。