黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

Oracle教程
Oracle練習題

Oracle常用函數

Lower

轉換小寫

upper

轉換大寫

substr

取子串

length

取長度

trim

去空格

to_date

將字符串轉換成日期

to_char

將日期或數字轉換成字符串

to_number

將字符串轉換成數字

nvl

可以將null轉換成一個具體值

case

分支語句

decode

同case

round

四舍五入

lower

● 查詢員工,將員工姓名全部轉換成小寫

select lower(ename) from emp;

upper

● 查詢job為manager的員工

select * from emp where job=upper('manager');

substr

● 查詢姓名以M開頭所有的員工

select * from emp where substr(ename, 1,1)='M';

length

● 取得員工姓名的長度

select length(ename) from emp;

trim

trim會去首尾空格,不會去除中間的空格。

● 取得工作崗位為MANAGER的所有員工

select * from emp where job=trim('MANAGER    ');

to_date

● 查詢1981-02-20入職的員工(第一種方法,與數據庫的格式匹配上)

select * from emp where HIREDATE='20-2月 -81';

● 查詢1981-02-20入職的員工(第二種方法,將字符串轉換成date類型)

select * from emp where hiredate=to_date('1981-02-20 00:00:00', 'YYYY-MM-DD HH24:MI:SS');

to_date可以將字符串轉換成日期,具體格式to_date(字符串,匹配格式)。

日期格式的說明

控制符

說明

YYYY

表示年

MM

表示月

DD

表示日

HH12,HH24

表示12小時制,表示24小時制

MI

表示分

SS

表示秒

to_char

● 查詢1981-02-20以后入職的員工,將入職日期格式化成yyyy-mm-dd hh:mm:ss

select empno, ename, to_char(hiredate, 'yyyy-mm-dd hh24:mi:ss') from emp where hiredate>to_date('1981-02-20 00:00:00', 'YYYY-MM-DD HH24:MI:SS');

● 查詢員工薪水加入千分位

select empno, ename, to_char(sal, '$999,999') from emp;

● 查詢員工薪水加入千分位和保留兩位小數

select empno, ename, to_char(sal, '$999,999.00') from emp;

將數字轉換成字符串,格式

控制符

說明

9

表示一位數字

0

位數不夠可以補零

$

美元符

L

本地貨幣符號

.

顯示小數

,

顯示千分位

to_number

將字符串轉換成數值

select * from emp where sal>to_number('1,500', '999,999');

nvl

● 取得員工的全部薪水,薪水+津貼

select empno, ename, sal, comm, sal+comm from emp;

以上結果不正確,主要原因是津貼(comm)字段為null,所以無法計算,所以正確的做法是將津貼先轉換成0,再計算。可以使用Oracle提供的nvl,該函數的語法格式為:nvl(表達式1,表達式2),表達式1:指的是字段名稱;表達式2:指的是將該字段的null轉換成的值。

● 采用nvl函數,取得員工的全部薪水,薪水+津貼

select empno, ename, sal, comm, sal+nvl(comm,0) from emp;

以上結果是正確的,在做表設計的時候,關于數值字段最好不允許為null,可以設置缺省值。

case … when … then …end

● 如果job為MANAGERG薪水上漲10%,如果job為SALESMAN工資上漲50%

select empno, ename, job, sal, (case job when 'MANAGER' then sal*1.1 when 'SALESMAN' then sal*1.5 end) as newsal from emp;

decode

同case …when …then … end

● 如果job為MANAGERG薪水上漲10%,如果job為SALESMAN工資上漲50%

select empno, ename, job, sal, decode(job, 'MANAGER', SAL*1.1, 'SALESMAN', sal*1.5) as newsal from emp;

round

四舍五入

select round(1234567.4567, 2) from dual;

Dual是oracle提供的,主要為了方便使用,因為select的時候需要用from。

全部教程
主站蜘蛛池模板: 中文字幕在线视频播放 | 欧美成人精品在线 | 国产超级乱淫视频播放 | 久久午夜免费视频 | 色综合第一页 | 久久精品一区二区三区日韩 | 91精品欧美一区二区综合在线 | 青青艹在线视频 | 波多野结衣在线观看网址 | 日韩专区亚洲国产精品 | 国产免费叼嘿在线观看 | 在线观看的黄网 | 黄色网点 | 国内性经典xxxxx | 最近中文字幕完整视频大全版 | 久久久久久88色偷偷 | 成年男女免费视频 | 狠狠干视频网 | 日韩不卡| aⅴ视频在线免播放观看 | 黑丝视频网站 | 久操视频在线播放 | 久久久久久一级毛片免费野外 | 激情五月俺来也 | 色站视频| 91热久久免费频精品动漫99 | a级高清观看视频在线看 | 国产又色又爽又黄的视频在线观看 | 国产高清不卡一区二区三区 | 国产精品视频分类一区 | 嘿嘿视频在线 | 久久综合欧美成人 | 午夜看一级特黄a大片 | 曰韩毛片| 免费又黄又硬又大爽日本 | www.黄色网.com| 日本亚洲国产精品久久 | 张柏芝国产一区在线观看 | 日韩精品一区二区三区免费观看 | 天天摸天天碰天天爽天天弄 | 亚洲大尺码专区影院 |