SELECT * | { [ DISTINCT ] column | expression [ alias ] , ... }
FROM table;
?SELECT 标识 选择哪些列。
?FROM 标识从哪个表中选择。
column后面加上空格,同时跟上别名(alias),或者 as 别名,到下一行的内容时,要用逗号隔开,
默认的别名是小写的,如果想要让它是大写的,使用 "别名"
如果别名有多个单词的时候,用双引号别名的方式 比如 “annual salary”
select employee_id id, first_name name from employees;
结果:
.....
193 Britney
194 Samuel
id NAME
------- --------------------
195 Vance
196 Alana
197 Kevin
107 rows selected
连接符:
?把列与列,列与字符连接在一起。
?用 ‘||’表示。
?可以用来‘合成’列。
select last_name||‘ `s eamil is ‘||email from employees;
类似于Java中的System.out.println(123+ “hello” + 123) ;//123hello123
默认情况下,查询会返回全部行,包括重复行。
在SELECT子句中使用关键字‘DISTINCT’删除重复行。
select distinct department_id from employees;
DEPARTMENT_ID
-------------
100
30
20
70
90
110
50
40
80
10
60
12 rows selected
SQL
语句与 SQL*Plus命令
Structural query language
SQL
?一种语言
?ANSI 标准
?关键字不能缩写
?使用语句控制数据库中的表的定义信息和表中的数据
SQL*Plus
?一种环境
?Oracle的特性之一
?关键字可以缩写
desc employees,desc是sql plus的关键字,全称是describe;
ed也是sql plus的关键字 ,全称是edit
?命令不能改变数据库中的数据的值
?集中运行
总结:
1. 对于日期型数据, 做 *, / 运算不合法
2. 包含空值的数学表达式的值都为空值
3. 别名使用双引号!
4. oracle 中连接字符串使用 "||", 而不是 java 中的 "+"
5. 日期和字符只能在单引号中出现. 输出 last_name`s email is email
select last_name || ‘ `s email is ‘ || email EMAIL
from employees
6. distinct 关键字, 以下语法错误
select last_name, distinct department_id
from employees
习题:
SQL*PLUS命令可以控制数据库吗?否!SQL*PLUS只是一个运行环境,控制数据库的是SQL语言。
版权声明:本文为博主原创文章,未经博主允许不得转载。
Oracle 基本SQL SELECT语句