Oracle Databaseの機能----

-ケースコントロール機能
--upper
仕事=アッパー( 'セールスマン')EMPからSELECT *;

--lower
(ジョブ)= '店員'は低級EMP SELECT * FROM。

--initcap
EMPからEMPNO、INITCAP(ENAME)を選択します。

入力パラメータがnullの場合--upper、下部は、これら三つの機能のINITCAP共通は、nullを返す
EMPからSELECT EMPNO、INITCAP(ヌル)。

- キャラクタ制御機能

-文字列のコネクタは、従業員の賃金の2名との接続を達成するために
選択ENAMEを||「:」|| SAL EMPからを。

-連結を接続された機能文字列、二つの接続の従業員名と給与達成するために
選択連結(連結(ENAME、「 :」)、SAL)EMPからと、

-文字列関数SUBSTR切断
SUBSTR(ジョブ、1,4)= 'SALE' EMP SELECT * FROMと、

-文字列の長さの長さの関数で求め
EMPからSELECT *長さ(ENAME)= 6;。

ストリング内Qiuzi位置--instr
選択INSTR(「ハローオラクル」、デュアルから「オラクル」)。

INSTR( 'ハローのOracleハローオラクル'、 'オラクル'、1、2)を選択デュアルから。

-左パディング機能LPAD
EMPからSELECT LPAD(ジョブ,. 9、 '*')。

-右パディング機能RPAD
EMPからSELECT RPAD(仕事,. 9、 '*');

-替换函数置き換える
デュアルから(「ハローオラクル」、「オラクル」、「世界」)置き換える選択します。

- 丸め関数ラウンド

-毎日賃金の従業員を求める
EMPから(SAL / 30,2)を選択し 、ラウンド。


-切り捨て機能TRUNC
、ラウンド(SAL / 30,2)を選択EMPからTRUNC(SAL / 30,2)。


- 機能のModの残りを求めて

-従業員の数を求めることは、従業員情報の偶数である
MOD(EMPNO EMP SELECT * FROM 、2)= 0。

--sysdate
SELECT SYSDATE-1昨日、SYSDATE今日、デュアルからSYSDATE + 1明日。

--months_between
EMPから(MONTHS_BETWEEN(SYSDATE、HIREDATE)/ 12)ラウンド選択。

--add_months
EMPから選択ENAME、ADD_MONTHS(HIREDATE、30 * 12)。

--next_day
デュアルから(SYSDATE、 '星期一')をNEXT_DAY選択します。

--last_day
SYSDATE、LAST_DAY(SYSDATE)デュアルからを選択します。
EMPからEMPNO、ENAME、LAST_DAY(HIREDATE)を選択します。

--round
EMPNO = 7654 EMPからHIREDATE、ラウンド(HIREDATE、 'YEAR')、丸(HIREDATE、 'MONTH')を選択します。

--trunc
EMPNO = 7654 EMPからHIREDATE、TRUNC(HIREDATE、 'YEAR')、TRUNC(HIREDATE、 'MONTH')を選択します。

-暗黙的なデータ型変換の例
EMP WHERE SAL> '2000'からSELECT *;
HIREDATE = '02 EMPからSELECT * - 4月-81「。

文字型への変換--to_char date型
TO_CHARのEMP(HIREDATE、 'YYYY-MM-DD')からSELECT、
SELECT TO_CHAR(HIREDATE、 'MM "月" DD "日" "の" YYYY')emp表から;
SELECT TO_CHAR (HIREDATE、 'DD-MON- EMPからRR'、 'NLS_DATE_LANGUAGE = AMERICAN')。

--to_char数値型文字型に変換
SAL、TO_CHAR SELECT(SALを、 'L0,000,000.00')EMPから;は
EMPからSAL、TO_CHAR(SAL、 'L9,999,999.99')を選択します。
SAL、TO_CHAR(SALを選択、「$ 9,999,999.99 「)EMPから。

--to_date日付型文字型に変換
セレクトENAME、HIREDATE EMPからHIREDATE > TO_DATE( '1981年12月31日'、 'YYYY-MM-DD')。

--to_number数値型文字型に変換
選択ENAME、SAL EMPからSAL > TO_NUMBER( '¥2000'、 'L99999');

--nvl
ENAME、SAL、COMM、SAL + NVL(COMM、0)EMPからを選択します。

--nvl2
EMPからENAME、SAL、COMM、NVL2(COMM、COMM + SAL、SAL)を選択します。

--nullif
EMPからEMPNO、ENAME、HIREDATE、NULLIF(HIREDATE、TRUNC(SYSDATE、 '月'))を選択します。

--coalesce
EMPからENAME、SAL、COMM、合体(SAL + COMMに、SAL)を選択します。

-従業員はすべてのジョブを表示したいのですが、これらのジョブは、中国のショーに置き換える必要があります
-
--CLERK:店員;
--SALESMAN:販売;
--MANAGER:マネージャー;
--ANALYST:アナリスト;
--PRESIDENT:社長;

--case表現
SELECT EMPNO、ENAME、
ケース仕事
「CLERK」を「クラークス」
「SALESMAN」を「売り」
「MANAGER」を「マネージャー」
「ANALYST」を「アナリスト」
他"大統領
エンド
EMPから。

--decode機能
選択EMPNO、ENAME、仕事、デコード (ジョブ、 'CLERK'、 ' 店員'、 'セールスマン'、 '販売、 'MANAGER'、 '管理者'、 'ANALYST'、 'アナリスト'、'社長「)EMPから。

--case式の値の決意のセクションでは、
EMPNO、ENAME、SAL、SELECT
ケースをするとSAL <2000その後、「ロー」に
するとSAL <5000その後、「で」
他に「高い」
終了
EMPから。

- 従業員情報テーブルを参照し、私は3ヶ月の雇用日後の日から次の月曜日を見せたい、とのような日付書式:2017年1月6日。

EMPNO、ENAME、TO_CHARを選択(NEXT_DAY(ADD_MONTHS(HIREDATE、3)、 '星期一')、 'YYYY-MM-DD')NEW_DATE
EMPから。

- 従業員情報テーブル、表示従業員毎日の速度と結果の小数点以下を四捨五入を参照すると、次いで、有料フォーマットはの形で「¥1,182.19」かかる例にフォーマット

EMPNO、ENAME、SAL、TO_CHAR選択(ラウンド(SAL / 30,2)を、 'L9,999.99')
EMPから。

-平均AVG
EMPからSELECT AVG(SAL)。

-求和和
EMPから選択和(SAL)。

-最大値MAX選択
EMPからのSELECT MAX(SAL)。

-最小化分
EMPからSELECT分(SAL)。

-カウント関数は、カウント
EMPからSELECT COUNT(*)を、
EMPからCOUNT(EMPNO)を選択します。

-セクタ数に関する統計
SELECT COUNT(DEPTNO)EMPから;
-グループ化機能の異なるキーワードで重複レコードを削除するには
、EMPから選択数(個別のDEPTNO) 。

-行转列wm_concat
EMPから選択wm_concat(ENAME)。

-従業員の平均賃金
選択和(SAL)/カウント( *) メソッド、SUM(SAL)/カウント( SAL) 方法II、AVG(SAL)方法3 EMPから;
-平均グラント社員
選択和(COMM)/カウント(*)方法A、SUM(COMM)/カウント( COMM) 方法II、平均(COMM)EMPからの方法3。

SELECT COUNT(*)、EMPから(NVL(COMM、0))を数えます。

EMP SELECTからCOMMは、
- NULL値ではないが無視される
EMPからSELECT AVG(NVL(COMM、0));
-ブランク無視
EMPから選択AVG(COMM)を、

部門数、平均賃金セクター: -表示に必要な各部門の平均給与、発見
から選択DEPTNO、AVG(SAL)を DEPTNOによりEMP基を表します。

-複数列のグループ化
-異なる部門によって、異なる位置、従業員の平均賃金を計算
DEPTNO選択し、ジョブ、AVG(SAL )EMP群からDEPTNOによってDEPTNO、ジョブの順序によって、

各部門の平均給与: -表示に必要な各部門の平均給与を、見つけました。
EMP群からAVG(SAL)を選択 DEPTNOによって、

-表示するのに必要な、各部門の従業員の名前を検索:部署番号、従業員名
を選択DEPTNO、からwm_concat(ENAME) DEPTNOによるEMPグループを、

- 表示するために必要な、より大きい2500賃金セクタを平均:部門数を、平均賃金

DEPTNOによってEMP平均(SAL)> 2500群から--select DEPTNO、AVG(SAL)。

-条件は、パケット関数に含まれている場合、パケットは、節を有する結果をフィルタリングする必要がある
から選択DEPTNO、AVG(SAL) DEPTNOを有する平均(SAL)によってEMPグループ> 2500。

-ないパケット機能がない場合、句は、パケットが効率改善するためにフィルタリングすることができる条件での使用が推奨
から選択DEPTNO、AVG(SAL)を DEPTNOによってEMPここDEPTNO = 10基であり;

-最大平均賃金求めセクタ
- group by句で使用するネストされたグループ化機能
を選択MAX(AVG(SAL))を DEPTNOによりEMP群から;

 

おすすめ

転載: www.cnblogs.com/xiaomifeng1010/p/11111207.html