ホームページ  >  記事  >  php教程  >  Oracle基礎学習の簡単なクエリと限定されたクエリ

Oracle基礎学習の簡単なクエリと限定されたクエリ

高洛峰
高洛峰オリジナル
2017-01-06 11:21:351389ブラウズ

この記事では主に Oracle の単純なクエリと限定的なクエリを紹介します。以下では多くを述べませんが、見てみましょう。

SQL:

1. DML (データ操作言語): 主にデータベースのクエリおよび更新操作を指します。クエリ操作は SQL 構文全体の中で最も面倒な部分であり、筆記テストで最もよく使用される部分です。 。

2. DDL (データ定義言語): 主にデータ オブジェクト (テーブル、ユーザーなど) の作成を指します。例: 関連する設計パラダイムが必要です。

3. DCL (データ制御言語): 主に権限操作を実行します (ユーザーと組み合わせて遵守する必要があります)。この部分は DBA の責任です。

単純なクエリ:

1、select 句を使用して表示するデータ列を制御します:

select empno,ename,ename,job,sal from emp;

2、distinct を使用して重複データ行を削除できます:

select distinct job from emp;

3、 select 句は四則演算を実行でき、定数の内容を直接出力できます。ただし、日付形式は文字形式に従います:

4, || は内容を出力します。

select empno,ename,(sal*15+(200+100)) income from emp;

5. where 句は通常、from 句の後に記述されますが、where 句は表示の操作を制御します。 select はデータ列を制御しますが、select 句は where 句の実行よりも遅れるため、select 句で定義されたエイリアスを where で使用することはできません。

限定クエリ:

1、関係演算子:

select empno||ename from emp;

2、論理演算子:

select * from emp where sal>1500;
 
select * from emp where ename ='SMITH'
 
select empno,ename,job from emp where job<>&#39;SALESMAN&#39;;

3、範囲クエリ:

select * from emp where sal>1500 and sal<3000;
select * from emp where sal>2000 or job=&#39;CLERK&#39;;
select * from emp where not sal >=2000;

4、空の判断(Nullは意味します)データベース上の不確実性。データ列で null が使用されている場合、それは 0 を意味しません)

select * from emp where sal between 1500 and 2000;
select * from emp where hiredate between &#39;01-1月-1981&#39;and&#39;31-12月-1981&#39;;

5、IN 演算子 (between と in に似て、指定された範囲を与えます):

select * from emp where comm is not null;

not in と null の問題について:

範囲判定に not in を使用する場合、範囲に null が含まれる場合、結果は返されません。

6、ファジークエリ:

"-": 任意の 1 文字と一致します。

"%": 任意の 0、1、または複数の文字と一致します。

名前が文字 A で始まる従業員情報をクエリします。 2番目の文字がA: ;

DESC: 降順に並べ替えます。

すべての従業員情報をクエリします。要件は給与が高いものから低いものまでです:

各従業員の番号、名前、年収を年収順にクエリします。低いものから高いものまで:

select * from emp where empno in (7369,7566,7788,9999);

ステートメントの実行順序: from - where -select - order by

基本的な演習:

1、部門 30 のすべての従業員を選択:

select * from emp where ename like &#39;A%&#39;

2すべての事務員の名前、番号、部門番号をリストします:

select * from emp where ename like &#39;_A%&#39;;

3. 給与よりも手数料が高い従業員の 60% を検索します:

select * from emp where ename like &#39;%A%&#39;;

4. すべてのマネージャーを検索します。部門 10 と部門 20 のすべての事務員:

select * from emp order by sal desc;


5. 部門 10 のすべてのマネージャーと部門 20 のすべての事務員を検索します。事務員、およびマネージャーでも事務員でもないが給与が または より大きいすべての従業員に関する情報を検索します。 2000 に等しい:

select empno ,ename,sal*12 income from emp order by income;
select * from emp where deptno=30;

6. コミッションを受け取る従業員のさまざまな仕事を調べます:

select ename,empno,deptno from emp
where job=&#39;CLERK&#39;;

7、コミッションを請求する従業員、またはコミッションが 100 未満の従業員を見つけます:

select * from emp where comm>sal*0.6 ;

8、「R」を含まない従業員名を表示:

select *
from emp
where (deptno=10 and job=&#39;MANAGER&#39; )or(deptno=20 and job=&#39;CLERK&#39;   );

9、名前フィールドにAが含まれる従業員名を表示 すべての従業員名について、基本給が高い順に結果を表示します給与が同じ場合、雇用年数は早い順、雇用日が同じ場合、結果は役職ごとに並べ替えられます。この記事の内容 この記事の内容が皆さんの勉強や仕事に少しでもお役に立てれば幸いです。ご不明な点がございましたら、メッセージを残してご連絡ください。

Oracle の基本学習の単純なクエリと限定的なクエリに関連するその他の記事については、PHP 中国語 Web サイトに注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。