oracle官网 语法,oracle 语法

5268f80b9b1e01f982625ef6fac83ca1.png

1.基本语法:SELECT *[列名 [[AS] 别名], 列名2...] FROM 表名 [[AS] 别名];

2. 使用||做连接:Oracle中的字符串用单引号。

例:SELECT ‘姓名:‘||ename||‘月薪‘||sal FROM emp;

3. 使用DISTINCT可以消除重复内容

4. WHERE子句:使用WHERE指定的条件对数据进行筛选,返回符合条件的记录(行)。

SELECT *[|列名 [[AS] 别名], 列名2...]

FROM 表名 [[AS] 别名]

WHERE 条件;

1) WHERE子句可以包括运算符,SQL操作符,使用(),常量,列,函数。

5. 运算符:

1) 算术:+ - * /

2) 比较:> >= < <= = !=(<>),

ANY(值1,值2...) ALL(值1,值2...) 不能单独使用,要配合>,>=,

3) 逻辑:AND OR NOT

6. SQL操作符:

1) IN(值1,值2...)

2) LIKE ‘模式字符串‘:_代表任意一个字符,%代表0到n个字符

3) BETWEEN 数值1 AND 数值2:不仅可用于数值,还可以用于日期时间

4) IS NULL,IS NOT NULL:匹配空值,非空值。对于空值一定不能用=或!=

5) IS NAN:非数字。IS NOT NAN:数字。Oralce特有

7. Oracle特有的伪列:

1) ROWID: Oracle内部对每个表的每一行都有一个唯一的标识。

★2) ROWNUM: Oracle对每次查询结果集的每一行记录都有一个行号。

对结果集的数据进行标识。不能对ROWNUM直接使用>,>=,!=,between..and..

怎么来获取第5条到第10条的记录呢?子查询,连接查询

8. 对结果进行排序:

SELECT *[|列名 [[AS] 别名], 列名2...]

FROM 表名 [[AS] 别名]

WHERE 条件

ORDER BY 排序列名 [ASC|DESC], 排序列名 [ASC|DESC]...;

9. SQL函数:数据库管理系统(DBMS)提供的一些功能封装。不同的数据库产品所提供的函数不尽相同。

1) 单行函数:同时只能对一行进行操作,且对于每一行返回一个值。

聚合函数:同时对多行进行操作,这多行只返回一个值。

2) 单行函数:

a) 字符串:lower(char),upper(char),length(char),initcap(x)

b) 数字:round(number,n)

c) 日期时间:sysdate 返回数据库所在操作系统的当前日期时间。

systimestamp 返回数据库所在操作系统的当前时间戳。

last_day(d) 返回指定日期当月的最后一天的日期时间

trunc(d[,unit]) 截断日期时间,unit: ‘year‘, ‘month‘, ‘day‘

d) dual表是Oracle提供给任何用户的一个表,常用在没有目标表的SELECT语句中。

e) 转换函数:

to_char(datatime[,format]), format: yyyy,mm,dd,hh24,mi,ss

to_char(number[,format]), format: l, 9, ‘,‘

to_date(char[,format]), 字符串-->日期时间

to_timestamp(char[,format]), 字符串-->日期时间戳

to_number(expr[,format])

f)其它函数:

nvl(expr1,expr2)  如果expr1为空,返回expr2的值,否则返回expr1。

nvl2(expr1,expr2, expr3)  如果expr1不为空,返回expr2,否则返回expr3。

decode(expr, search1,result1,search2,result2,...)

case expr when search1 then result1

when search2 then result2

...

else resultn

end

oracle 语法

标签:sql 语法

1428d0e076c3959ab11d28a39bc84fab.png

5268f80b9b1e01f982625ef6fac83ca1.png

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:http://adcit.blog.51cto.com/2037602/1894186

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值