日期:2014-05-16  浏览次数:20352 次

SELECT 语句

例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列表中的字符、数字和日期),字符和日期必须包含在单引号内

select last_name||' is a'||job_id AS "Employee Details"
from employees;

?

? ??

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 限定符将影响所有选择的列。结果是列的每个不同组合。

?

?

?