上級#2:条件付きクエリ
/ *
構文:
SELECT
クエリのリスト
から
テーブル名フィルタ基準;
分類:
、条件式フィルタ
の単純な条件演算子:> <= = <>> = <=!
二、スクリーニングの論理式
論理演算子:
アクション:接続するための条件式を
!&& ||
そしてかない
&&とと:両方の条件に該当する、結果が偽、真であるそう
||またはまたは:限り、1つの条件が真であるとして、結果はtrueになり、それ以外の場合はfalseで
、接続自体の条件がfalseの場合、:!かtrueと評価され、そうでない場合はfalse
3ファジークエリ
などの
間
では、
NULLである
* /
#Aを、条件式スクリーニング
ケース#1:従業員情報照会給与> 12000
SELECT
*
FROM
社員の
WHERE
給与> 12000;
#ケース2:クエリの部門番号は、従業員名と90個の数字の部門番号と等しくない
SELECT
LAST_NAME、
DEPARTMENT_ID
FROM
従業員
WHERE
DEPARTMENT_ID <> 90。
#第二に、論理式スクリーニング
ケース#1:クエリのz従業員の賃金10,000〜20,000、賃金と賞与の間であった
SELECT
LAST_NAME、
給与、
COMMISSION_PCT
FROM
従業員
WHERE
給与> = 10000と給与<= 20000;
#ケース2:クエリの部門番号が90ではありません110以上の従業員の給与情報と15000
SELECT
*
FROM
従業員
WHERE
NOT(DEPARTMENT_ID> = 90 DEPARTMENT_ID AND <= 110)または給与> 15000;
#3ファジークエリ
/ *
のような
間
に
nullである| nullではありません
* /
#1.like
/ *
特長:
①で使用される一般的なワイルドカード
ワイルドカード:
%任意の数の文字を、0からなる文字
_任意の単一文字の
*を、
ケース#1:クエリの従業員情報を従業員名がの文字が含まれてい
SELECT
*
から
社員の
WHERE
last_nameの「%%」のような、ABC#の
#ケース2:従業員は3番目の文字が電子で名前照会、5番目の文字は、賃金の従業員名とある
SELECT
LAST_NAME、
給与
FROM
従業員
WHEREが
「LIKEをLAST_NAMEは、 __n_a%「;
ケース#3:文字_従業員名の2番目のクエリの従業員の名前
文字をエスケープ#ESCAPE
SELECTは
LAST_NAME
FROM
従業員
WHEREを
;「_ $ _%」ESCAPE「$」LIKEをLAST_NAME
#2.betweenおよび
/ *
①の文の間と簡潔利用を増やすことができます
②しきい値を備え、
順次③2つの重要な値が入れ換えないで下さい
* /
ケース#1:クエリの従業員番号100-120従業員情報の間
SELECT
*
FROM
社員
WHERE
EMPLOYEE_ID> = 120 AND EMPLOYEE_ID <= 100。
#----------------------
SELECT
*
FROM
従業員120〜100のEMPLOYEE_ID。
3.In#
/ *
意味:リスト内のアイテムのフィールドの値かどうかを判断するため
の機能:
①の簡潔な声明改善するのに使用
型②inリストの値が同じまたは互換性の持つ
③inリストは、ワイルドカードをサポートしていません。
* /
#ケース:問い合わせスタッフの求人数は、スタッフの名前と番号の種類IT_PROG、AD_VPで、AD_PRESで
SELECT
LAST_NAME、
JOB_ID
FROM
従業員
WHERE
JOB_ID = 'IT_PROT' OR JOB_ID = 'AD_VP' OR JOB_ID = 'AD_PRES';
#------------------
SELECT
LAST_NAME、
JOB_ID
FROM
従業員
WHERE
( 'IT_PROT'、 'AD_VP'、 'AD_PRES')、IN JOB_ID。
4#、nullである
* /
> <=またはヌル値を決定するために利用できない
ヌルまたはベースヌルヌル値ではありません
* /
ケース#1:スタッフのボーナスとボーナス率指していないクエリ
SELECT
LAST_NAMEは、
COMMISSION_PCT
FROM
従業員
WHERE
COMMISSION_PCTはNULLです。
ケース#1:従業員のクエリ名とのボーナスのボーナスがあります
SELECT
LAST_NAMEは、
COMMISSION_PCT
FROM
従業員
WHEREは
ありませんがNULL IS COMMISSION_PCT;
以下は----------×#で
SELECT
LAST_NAME、
COMMISSION_PCT
FROM
従業員
WHERE
;給与は12000 IS
#同じセキュリティ<=>
ケース#1:スタッフのボーナスとボーナス率指していないクエリ
SELECT
LAST_NAMEは、
COMMISSION_PCT
FROM
従業員
WHERE
COMMISSION_PCT <=> NULL;
#事例2:従業員12,000のためのクエリの給与情報
SELECT
LAST_NAME、
給与
FROM
従業員
WHERE
給与<=> 12000;
#IS nullのPK <=>
ISのNULL:NULL値のみを決定することができ、高い可読性を推奨
<=>:NULL値が決定され、正常値に基づいていてもよい、低級可読性