1.すべてのデータの内容の特定のテーブルを選択するためのクエリ文の
構文:
[DISTINCT] * {col_name1、col_name2を、..}選択
tb_nameから;
注:括弧内に現れる構文[]オプション部分を示します
* :すべての列だけを使用するテストとして、学ぶには、非効率的で貧しい読みやすさなど、企業の用語で表示されないこと
col_name1:列名、あなたは、列名の間に、複数の列の値を表示することができ、リストされているデータフィールドへのアクセスが必要になります使用は、分割することができ
、従業員情報テーブル:s_emp
s_dept:スタッフ部門表の
需要:すべてのレコードを参照してくださいs_deptテーブル
SELECT *
s_deptからの;
SELECT ID、名前、region_idが
s_deptから;
運動:IDの閲覧すべてのレコードs_deptテーブルそして、名前
SELECT ID、名前
s_deptからの;
運動:全従業員のIDを参照し、名前(LAST_NAME)と給与(給料)
SELECT ID、LAST_NAME、給与
s_empから、
2.Select文は、指定した列のすべての値に対して算術演算を行うことができます。
構文:
SELECT COL_NAMEデジタルオペレータ
; tb_nameから
各従業員のビューの従業員ID、名および給与:需要。
言及したID上記のSELECT、LAST_NAME、給与* 12
s_empから;
注:select文は、権利元のデータを変更することはありません。
演習:各従業員の従業員ID、名および給与を確認の後100年間給与の増加となりました
。SELECT ID、LAST_NAME、(給与+ 100)* 12
s_empから、
3列からクエリエイリアスに
構文:
old_column SELECT [AS] new_column_name
からtb_name;
需要:従業員は、従業員ID、名および給与を表示年次呼ば給与列
SELECT ID、LAST_NAME、給与* 12 AS年次
s_empから;
4. ||複数の列または列の値と特別な文字列を利用することができます1つの表示欄に
構文:
SELECT COL_NAME ||「spe_char」|| COL_NAME
tb_nameから
「spe_char」:列の値は、この構文を使用して、ディスプレイに接続されている特定の文字列を維持する場合。
需要:ビュースタッフの従業員IDのフルネーム
SELECT ID、FIRST_NAME LAST_NAME ||
s_empから。
演習:ビュースタッフの従業員ID、氏名や役職、氏名と役職を1つのディスプレイに結合され、形式は次のとおりです。名前、役職
IDを選択し、first_nameの||「」|| LAST_NAME ||「」||タイトルとして名前
s_empから、
ヌル操作5.値する代替
NVL()関数の
構文:
SELECT NVL(COL_NAME、change_value)
tb_nameから、
需要:ビューの従業員ID、名および手数料のすべての従業員、言及が空になった場合は、0と表示
上記のIDを選択します、LAST_NAME、NVL(COMMISSION_PCT、0)COMMISSION_PCT
s_empから、
異なるキーワードの使用は重複レコードに表示されてもよい6は一つだけ表示
構文:
SELECT別個COL_NAME、... COL_NAME
tb_nameから;
注1:異なるキーワードのみキーワード背面に選択することができる
例えば:異なるタイトル、上記ID上に選択
s_empから、
文の構文の間違った!!!!!
注2:異なるキーワード場合複数の列の後ろに存在する場合、すなわち、複数の列、複数列ジョイントデエンファシスを表します値は、レコードを複製するのと同じ時間であると考えられています。
テストテーブル:
上述ID上記ID2
1 2
1 3
2 4
3 4
3 4
SELECT DISTINCT ID、ID2
テストから、
結果を示す:
上述ID上記ID2
1 2
1 3
2 4
3 4
デマンド:役職と部門ID、同じ部署内の同じ位置のすべての従業員を見ます一度だけ表示さ
SELECT DISTINCTタイトル、DEPT_ID
; s_empから
7.sqlplusコマンド
sqlplusをログインした後、あなたが店/実行するSQL文の変更/実行にバフ(キャッシュ)を使用することができます
:ここでバフの特性を
1.buffのみ保存することができますSQL文(ただし、このSQL文は行の多くを持っている場合があります)
2.新しいSQL文に配置され、それぞれが前の上書きされます
。3. SQL文の各実装を、SQL文では、内部のバフにこれを置く
リットル見ますSQLステートメントキャッシュ
の追加の新しいコンテンツの行の後ろの[場所]で、A
iは新しい行に挿入される行の下の[配置します]
代替的にCの文字列の行、特定[標的]
C /古い文字列/新しいストリング
・デル・削除行の内容〔標的〕
コンテンツの背後にあるが、この添加したN行に書き換えることができる
!クリア背後に接続!コマンド端子:$記号を使用することで、たとえば、画面のウィンドウをクリア:$ CLSは、
バッファ/ SQLコマンドを実行する
明確なバッファ:現在のキャッシュコマンドをクリア
ファイルtest.sql内に格納されているSQL文のバフtest.sql内のセーブ
test.sql内でGET test.sql内内容はバフにロードされ、それが実行されていない
にロードして実行バフでコンテンツtest.sql内test.sql内スタート
にロードして実行バフでtest.sql内コンテンツtest.sql内@
編集file_nameの使用を編集するデフォルトのエディタファイルの
実行やファイルの横のSQLのSQLステートメントの結果の保存スプールfile_nameに
SQL1
結果1
SQL2
結果2
...
閉じられたスプール機能をOFFスプール
終了します。exit
IDの8.select、LAST_NAME、FIRST_NAME、給与、DEPT_ID
s_empから
ROWNUM <= 10;
結果は私たちの素敵なディスプレイインタフェースにより良い、列を見ていません。
COLUMNのLAST_NAMEフォーマットA15;
と略記することができる:
A15用COLのLAST_NAME、
COLUMNのFIRST_NAME FORMAT A15;
第II章:ソートとクエリ制限
並べ替え1.:ソートいわゆるは、フィールドケースの値に基づいて昇順に係るまたはレコードクエリを降順アウト
文法:
SELECT COL_NAME、...
tb_nameのから
順COL_NAMEによって[ASC | DESC]、...
注:そう、クエリ結果を変更しない、唯一の調整句クエリレコードを表示した単語を使用して、ソート順。最小行政権、および最終実行。
2.ソートキーワード:
ASC:ASC(デフォルト、デフォルトのソート順の生活のキーワードなしのデフォルトの意味)
DESC:降順
複数の列がソートされているがある場合3.、ソートされた列が最前列後方に設けられています(同じ)値を繰り返した後にソート。
例:
ID ID2
1 2
2 3
4 3
4 1。
4 2。
ステートメント:
SELECT ID、ID2
テストから
ID、ID2のDESC順;
結果:
ID ID2
。1 2
2 3
3 4
4 2
4 1
注:最初の行の最初の列、最初の列の重複がある場合値は、再び第二のカラムにランクなど
の需要:ビュー従業員ID、名および給与は、給与に従って降順で表示しました。
2.クエリ指定されたクエリのクエリを制限する
構文:
...、SELECT COL_NAMEを
tb_nameから
COL_NAME比較演算式
論理演算子
COL_NAME比較演算式
...
注:
1.リミットクエリを、where句を使用して
前記複数の条件、および論理演算子()集積論理条件
最高優先3.where句
4.オペレータによる比較動作、および値の式からなります
共通の操作:
"論理比較演算子
=> <> = <= =!
2"は等しくない:3が意味を言ってい等しくない(!=が多いです)
!= <> ^ =
需要:ビューの従業員以下idとname 1000年よりスタッフの給与
SELECT ID、LAST_NAME、給与
s_empから
WHERE給与<1000;
2、「SQLの比較演算子
との間に:どの程度の
要件:チェックインのスタッフで賃金IDの700から1500の間に、そして、の名称
上記ID以上、LAST_NAME、給与SELECT
s_empから
、700〜1500給与WHERE
のリストに:(リスト)での
需要:ビューの職員数1,3,5,7,9賃金は
、上記のID、last_nameの、給与を選択
からをs_emp
(1,3,5,7,9)でIDは、
のように:ファジークエリ、すなわち、値が時間の使用の正確な値ではない
任意のシンボリックコンテンツ置き換えることができ、ワイルドカード
文字ワイルドカードの複数0:%を
_:もしおよびワイルドカード文字のみの場合は
エスケープ文字:
\である、あなたは指定された時間を指定することができ、デフォルトは記号でエスケープする指示、文字が後にのみ、エスケープ文字をエスケープすることができ
、需要:文字Cで始まるビューの従業員の名前従業員ID、給料。
ID SELECT、姓、給与
s_empから
LAST_NAME「%のC」等;
運動:5以上ビュー従業員名の長さ、及び文字nはIDおよび従業員賃金の第四の文字は
、ID、姓、給与SELECT
s_empから
LAST_NAMEなど'___ N_%';
需要:ビュー従業員名の交換スタッフIDと賃金_の
SELECT ID、LAST_NAME、給与
s_empから
WHERE last_nameのLIKE '%\ _%'エスケープ'\';
nullである:ヌル値の動作特性定義された演算子は、使用することはできません=
需要:従業員に提供するために、参照の従業員が空になっIDと名前
SELECT ID、LAST_NAMEを、COMMISSION_PCT
s_empからは
commission_pctがNULLである;
3.論理演算子は、
そこに使用する際に、複数の条件がある場合
と論理:と
か:または論理
注:とロジックはロジックまたはより高い
ではない:非論理的な
需要:株価書記官のための41個の部門や役職のビューの従業員ID(倉庫管理)の従業員のIDと名前
を選択し、ID、last_nameの、DEPT_ID、タイトル
s_empから
DEPT_ID = 41
と
タイトル=「株価クラーク」;
運動:ビューの従業員の部門41のまたは44部署と従業員のIDとの名前1000年を上回る賃金
。SELECT ID、last_nameのを、DEPT_ID、表題
s_empから
給与> 1000 WHERE
と
(= 41 DEPT_ID
又は
; DEPT_ID = 44)
図従業員セクタ41及び給与が1000 44部門の従業員IDとの名前よりも大きい
SELECT ID、姓、DEPT_ID、タイトル
s_empから
給与> 1000年
と
DEPT_ID = 41
又は
DEPT_ID = 44。
単一テーブルのクエリとSQLPLUSを選択
おすすめ
転載: www.cnblogs.com/yxj808/p/12022495.html
おすすめ
ランキング