日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL语言(4)

發布時間:2025/3/20 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL语言(4) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SQL語言(4)

一.Oracle函數

1.什么是函數

是數據庫產品中提供的能夠處理查詢結果的方法;

2.函數的作用:

?執行數據計算;
?修改單個數據項;
?格式化顯示的日期和數字;
?轉換數據類型;
?函數有輸入參數,并且總有一個返回值;

3.函數類型

?單行函數:這些函數僅對單個行進行運算,并且每行返回一個結果;
?多行函數(聚合函數):這些函數能夠操縱成組的行,每個行組給出一個結果,這些函數也被稱為組函數;

4.函數語法

Function_name(arg1,arg2,…)
Function_name:是函數的名字;
arg1,arg2:是由函數使用的任意參數。參數可以是一個列名、用戶提供的常數、 變量值、或者一個表達式;

5.單行函數

單行函數的特性包括:
?作用于每一個返回行,每行返回一個結果;
?可能需要一個或者多個參數;
?可以修改結果集的數據類型;
?可以嵌套;
?可能返回一個與參數不同類型的數據值;
?能夠用在select、where和order by 子句中;

單行函數分類:

?字符函數:接收字符輸入,可以返回字符或者數字值;
?數字函數:接收數字輸入,返回數字值;
?日期函數:對DATE數據類型的值進行運算(除了months_between函數返回一個數字,所有日期函數都返回一個date數據類型的值);
?轉換函數:從一個數據類型到另一個數據類型轉的一個值;
?通用函數:nvl、nvl2、nullif、coalsece、case、decode;

6.字符函數

單行字符函數接收字符數據作為輸入,既可以返回字符值也可以返回數字值;
字符函數分類
?大小寫處理函數;
?字符處理函數;

7.大小寫處理函數

Lower:轉換大小寫混合的字符串為小寫字符串;
Upper:轉換大小寫混合的字符串為大寫字符串;
Initcap:將每個單詞的首字母轉化為大寫,其他字母為小寫。
大小寫處理函數需要一個參數,參數類型為字符串類型,返回一個字符串;
(以hr用戶中的employees為例)

例:

1.查詢員工表,使用“ The Job id for ”鏈接轉換大寫格式后的員工姓名,并使用 “ is ”字符串鏈接他們工作ID,要求將工作ID轉換小寫格式。修改列名為 “EMPLOYEE DETAILS”;
1.Select ‘ The Job id for ’ || upper(last_name) || ‘ is ’ || lower(job_id) “EMPLOYEE DETAILS” from employees;
2.顯示雇員 higgins 的雇員號、姓名和部門號;
2.select employee_id,last_name,department_id from employees where last_name = initcap(‘higgins’);

8.字符串處理函數

Dual表:一張只有過一個字段,一行記錄的表。Dual表也成為“偽表”因為他不 存儲主題數據。如果不需要從具體的表來取得表中數據,而是單純的為了得到一些 想要的信息,并要通過select完成是,就要借助dual表來滿足結構查詢語言的格 式;

9.Concat(arg1,arg2)

:連接值在一起;
Arg1:字符串類型、字符拼接的值。
Arg2:同上;

10.Substr(arg1,arg2,arg3)

:截取子串;
截取的順序永遠是從左向右截取,不論前面是位置中的是
正數還是負數,都是從選擇的位置向右截取;
Arg1:字符串類型;源字符串;
Arg2:整數類型,開始位置(開始位置可以是一個整數,-1表示原串的最后一位, -2表示倒數第二位以此類推)。
Arg3:整數類型。截取個數。

11.Substr(arg1,arg2)

:截取子串。
Arg1:字符串類型原字符串;
Arg2:開始位置(開始位置可以是一個負數,-1表示原串的最后一位,-2表示倒數 第二位以此類推)截取到末尾;

12.Length(arg1)

:以數字值顯示一個字符串的長度;
Arg1:字符串類型。計算長度的字符串;

13.Instr(arg1,arg2)

:找到一個給定字符的數字位置;
Arg1:字符串類型。原字符串;
Arg2:字符串類型。查找內容;

14.Instr(arg1,arg2,arg3,arg4)

:指定查找位置以及出現的次數。
Arg1:字符串類型,原字符串。
Arg2:字符串類型,查找內容;
Arg3:整數類型,查找位置;
Arg4:整數類型,第幾次出現;

15.Lpad(arg1,arg2,arg3)

:用給定的字符左填充字符串給定的長度;
Arg1:字符串類型;原字符串;
Arg2:整數類型;總長度;
Arg3:字符串類型,充填的字符串;

16.Rpad(arg1,arg2,arg3)

:用給定的字符右填充字符串給定的長度;
Arg1:字符串類型;原字符串;
Arg2:整數類型;總長度;
Arg3:字符串類型,充填的字符串;

17.Trim(arg1)

:從一個字符串中除去(leading)或尾(trailing)或頭尾兩側(both)的 字符(默認為頭尾兩側)如果除去的是一個字符或者文字必須放在單引號中;
Arg1:需要操作的字符串。From為關鍵字;
格式1:需要去掉的內容from原字符串;
格式2:leading|trailing|both需要去掉的內容from原字符串。


去掉頭尾兩側:
Select trim(‘h’ from ‘helloh’) from dual;
Select trim(both ‘h’ from ‘helloh’) from dual;
只去掉頭:
Select trim(leading ‘h’ from ‘helloh’) from dual;
只去掉尾:
Select trim(trailing ‘h’ from ‘helloh’) from dual;

18.replace(arg1,arg2,arg3)

:replace函數是用另外一個值來替代串中的某個值。
Arg1:字符串類型,原字符串;
Arg2:字符串類型,需要替換的子串;
Arg3:字符串類型,替換的內容;
(以hr用戶中的employees為例)

:1.顯示所有工作崗位名稱從第4個字符位置開始包含字符串REP的雇員的信息,將 雇員的姓和名連接顯示在一起,還顯示員工名的長度,以及名字中字母a的位置。
Select concat(first_name,last_name),length(last_name),instr(last_name,’a’) from employees where substr(job_id,4) = ’REP’;
2.顯示名字是以n結束的雇員的數據,將雇員的姓和名連接顯示在一起,還顯示雇 員名的長度,以及名字中字母a的位置;
Select concat(first_name,last_name),length(last_name),instr(last_name,’a’) from employees where substr(last_name,-1) = ‘n’;
3.將手機號中間四位用星號代替。
Select replace(‘13846001292’,substr(‘13846001292’,4,4),’****’) from dual;

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的SQL语言(4)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。