Oracleの研究ノート(A):シンプルなSQL文

tableステートメントの構築にオラクル:

(表ユーザーを作成

ID番号(4)主キー

名前はvarchar(10)、

--varcharは、固定長文字データ型を書きます

パスワードVARCHAR2(10)、

--varchar2可変長文字データ型

セックスCHAR(2)、

--char固定長データ・タイプ

ADDRのVARCHAR(20)、

誕生日、

--date日付データ型

給与番号(8,2)

小数点なしの数値型--number

全長--number(8,2)のデータテーブルは、小数点2を表し、8ビットであります

);

Oracleの問合せ文:

emp表からすべての情報を発見 - ; EMPから選択*

--desc EMP;クエリは唯一のコマンドラインモードで使用することができ、コマンドラインでのSQLステートメントは、タイトルを持っている必要があります

OracleのSQLステートメントは、大文字と小文字を区別しないが、キーワードが複数の行や略語にまたがることはできません、書き込みの単一または複数の行も大文字で一般的なキーワード、他の小文字することができます

- テーブルからサブセグメントのクエリ部分

EMPからのEMPNO、ENAME、SAL、COMMを選択します。

--sql * Plusは、デフォルトの表示:

    日付と左揃えの文字型データ;数値データ右寄せ

- クエリの実行中、データのデータタイプを実行することができる+、 - 、*、/計算

- 乗算、除算、加算と減算よりも高い優先度、計算順序が同じレベルで左から右であり、式で使用することができるの優先順位を変更するオペレータを括弧

- クエリフィールドにエイリアスを再生することができ、さまざまな方法がありますが、あなたは「」あなたはできないとして、として使用することができますことはできません

- あなたは別名または強制大文字と小文字を区別し、またはスペースで特殊文字を使用する場合は、二重引用符の対象となっています

EMPから従業員を選択EMPNO、ENAMEの従業員名、SAL "給与"、SAL * 12 "年俸"、COMM "ボーナス"、(SAL * 12 + COMM) "収入"。

- ヌルは算術式に表示され、得られた結果は、NULLは0に等しくない場合、nullであります

- 二重縦線はにクエリ結果を有する2つの以上の列であってもよいです

EMPからEMPNO、ENAME、EMPNO ENAME || ||ジョブ "従業員情報" を選択します。

- nullは、接続表現に表示されて、元の文字データであります

EMPNO ||「マネージャは、」EMPから||マール「所属」を選択し; - 例えば、クエリ結果の9行目を

- ヌル値がNULL値が0またはスペースに等しくない利用できない、未割り当ての値を意味する、ヌルに等しい任意の式はnull値を含むヌル値の任意のタイプをサポートすることができ、ヌルコネクタは等しい発現を含みますヌル文字が接続され、それは、元の文字列であります

- 必須フィールドは、二重引用符のケースを変更する必要があり、それはまだ大文字にデフォルト設定されます

EMPからのEMPNO「EMPNO」を選択します。

- クエリ式または数値の選択リストに含まれる文字のテキスト文字列で、日付とテキスト文字列を書き込むには、単一引用符で囲む必要があります。それぞれが一度に表示されるテキストのレコードの文字列を返します。

- 計算 - 利用日+型のデータについては、

   または日付+ 1 - プラスまたはマイナスの数日は、新しい日付を与える値

   日数の間の位相差を与えるための2つの日付を引い2.データ、

- 2つの日付データではなく、日付データ型の乗算と除算を追加できないタイプ

EMPからのEMPNO、ENAME、HIREDATE "入社日"、(HIREDATE + 90) "正の日付" を選択。

現在の日付を取得--sysdate

; EMPから/ 365 "労働生活" - EMPNO、ENAME、(入社日SYSDATE)を選択

--to_char年に入社日を抽出する(入社日、「YYYY」)、月を抽出するためにto_char関数(入社日、「MM」)、to_char関数(入社日、D-D「」)の日へのアクセス

選択ENAME、to_char関数EMPから(入社日、D-D 'を');

- データ重複除外

EMPは異なるDEPTNOを選択します。

- 重複した複数列のデータを削除します

EMPは異なるジョブDEPTNOを選択します。

- where句のフィルタデータ

- このような問合せの部門番号などのデータが10であります

DEPTNO = 10 EMPから選択*;

EMPどこENAME =「SMITH」SELECT * FROM; - 場合を含め、同じデータテーブルを希望しなければならない、単一引用符がなければなりません

- 日付データ型の場合、フォーマットは機密日付データ型の書式はDD-MM-YYYY(年 - 月 - 日)されています

雇用開始日= '20 EMPから選択* - 2月-1981' 。

- 現在のセッションでの日付形式を変更します

'YYYY-MM-DD HH:MI:SS' セッションセットのNLS日付fomatを=改変すること。

他の比較--where

EMPから選択*どこSAL> = 2000;

EMPから選択*どこSAL =選択或3000 * EMPどこからSAL <> 3000!;

- 論理演算子:とや&&:条件の組み合わせがtrueの場合、trueを返し、またはあるいは||:組成物のいずれかに該当すれば、真を返すことを条件とする;ありませんか!:組成物がfalseの場合、trueを返すことを条件とします

- の間で使用...と 

EMPからどこSAL 2000と3000の間で選択*

EMPから選択*どこSAL> 2000およびSAL <3000

- で使用してください

EMPから選択*どこで仕事(「管理者」、「店員」)

- の代わりに、またはOracle関数で使用||

EMPから選択*ここで、ジョブ=「管理者」または「店員」

クエリは、文字データの--like、あなたはあいまいクエリを行うことができます

'* A *' のようなEMP ENAMEから選択*

- 0%は、任意の文字以上を表します。

「%」のようなEMP ENAMEから選択*

- 「_」文字を表し

「_Aの%」のようなEMP ENAMEから選択* - 個人の情報の第二の手紙の名前を探します

* EMPからどこENAME「%%%」のような選択 - 同等のものをすべて検索します

'%\ %%' エスケープのようなEMP ENAMEから選択* '\'

- 使用する空の値がnullであるため比較

COMMがNULLですEMPから*を選択

- not演算子使用

EMPから*を選択する場所SALない2000と3000の間に、

- order by句を使用して、ソート後のデータのクエリ、デフォルトはASC、DESCも降順で使用することが上昇されます

SALによるEMPどこSAL> 2000オーダーから選択*;

EMPから*を選択する場所のSAL DESCによってSAL> 2000オーダー。

- 複数のフィールドをソートすることができます

DEPTNO SALによってEMP順序SELECT * FROM; - 現在のデータが同じで、ソートバックすることにより行われます

- 列のエイリアスソート

"給料" によるEMP順序からEMPNO、ENAME、(SAL * 12) "給料" を選択します。

データベースオブジェクトの命名:1.文字で始まる必要があります; 2は、デジタル(0-9)と3つの特殊文字を含むこともできる(#$ _);同じユーザの下で4つのオブジェクト; 3予約語の神託を使用しないでください。なく、同じ名前の、さらには異なるオブジェクトタイプの場合

 

 

 

 

 

 

おすすめ

転載: www.cnblogs.com/qiuqiu1005/p/11628160.html