现在的位置: 首页 > 综合 > 正文

oracle学习 实时补充

2018年04月18日 ⁄ 综合 ⁄ 共 1496字 ⁄ 字号 评论关闭
1.

CREATE TABLE TEST_2 as (
SELECT ID,NAME,PASSWORD  FROM TEST_1)

2.
一个列别名既能用在SELECT子句也能用在ORDER BY子句中。不能在WHERE子句中使用列别名
如果别名中包含特殊字符或者空格,需要用“”
3. 查询 Test_2 中password 以%%开头,中间包含A 的 行
select * from TEST_2 where PASSWORD like '\%\%%A%' escape'\'
4.password 不为 123 和admin123 的行
select * from TEST_2 where PASSWORD not in('123','admin123')
5.LOWER(c) 转小写 ;UPPER(c) 转大写;initcap(c)将字符串中所有单词的第一个字符变大写,其他为小写
Select Initcap('whaT is this') From Dual     -->What Is This
6.concat 字符串拼接函数
select concat('aaa','bbb')from dual  -->aaabbb
select concat(12,23)from dual  -->1223
7.SUBSTR函数   第二个参数:截取的开始位置 ,如果为负数,则从后往左数;第三个参数:截取的长度
SELECT SUBSTR('WHAT IS THIS', -5,3)  FROM DUAL -->TH
8.length函数
Select Length('A123中') From Dual; -->5    |  length('') -->null
9.
select sysdate, current_date from dual  //sysdate 和 current_date 功能一样
10.     ADD_MONTHS() 返回指定日期月份+n之后的值 ;MONTHS_BETWEEN(d1,d2) 返回d1与d2间的月份差
Select Months_Between(Sysdate, Sysdate),
Months_Between(Sysdate, Add_Months(Sysdate, -1)),
Months_Between(Sysdate, Add_Months(Sysdate, 1))
From Dual
11. replace 函数 .三个参数('需要被修改的字符串','被替换的字符串','替换字符串’)
select replace('aaabbbccc','aa','bb') from dual    -->bbabbbccc
12. CASE WHEN...THEN...ELSE...END
相当于switch...case...default...语句
13 trunc函数 (1.获取时间  2.截取数字)
select trunc(sysdate) from dual     --> 2014-11-18 上午12:00:00    //获取当前系统时间
select trunc(22.22) from dual        -->22
select trunc(22.22,1) from dual     -->22.2 (保留一位小数)
14 to_date函数  (日期转换)
select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss')
from dual   -->2005-1-1 下午1:14:20
select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH:mi:ss')
from dual    -->error : 小时值必须介于 1 和 12 之间

抱歉!评论已关闭.