一般的な SQL クエリ ステートメントは何ですか?
一般的な SQL クエリ ステートメントには次のものが含まれます: 1. テーブル構造の表示 [SQL>DESC emp;]; 2. すべての列のクエリ [SQL>SELECT * FROM emp]; 3. 指定された列のクエリ [SQL>SELECT empmo , ]; 4. 指定された行をクエリします [SQL>SELECT * FROM]。
#一般的な SQL クエリ ステートメントは次のとおりです:
#1. 単純なクエリ ステートメント1. テーブル構造の表示
SQL>DESC emp;
SQL>SELECT * FROM emp;
SQL>SELECT empmo, ename, mgr FROM emp;
SQL>SELECT * FROM emp WHERE job='CLERK';
SQL>SELECT ename, sal*13+nvl(comm,0) FROM emp;
SQL>SELECT ename, sal*13 nvl(comm,0) year_sal FROM emp; (year_sal は別名であり、別名でソートできます)
SQL>SELECT * FROM emp WHERE hiredate>'01-1月-82';
% は 1 つ以上の文字を表し、_ は 1 つの文字を表し、[charlist] は文字列内の任意の 1 文字を表します。[^charlist] または [!charlist] は文字ではありません 列内の任意の 1 文字。
SQL>SELECT * FROM emp WHERE ename like 'S__T%';
SQL>SELECT * FROM emp WHERE job IN ('CLERK','ANALYST');
SQL>SELECT * FROM emp WHERE mgr IS/IS NOT NULL;
SQL>SELECT * FROM emp WHERE (sal>500 or job='MANAGE') and ename like 'J%';
SQL>SELECT * FROM emp ORDER BY deptno, sal DESC;
11. ユースケース ... when ... then ... クエリ結果の処理を終了
SQL>SELECT CASE a WHEN "original_a" THEN "新しい名前 Aa" WHEN "original_b" THEN "新しい名前 Bb" END AS XXX;
テーブル内のフィールドを選択しますaの内容がoriginal_aの場合、内容は「新しい名前Aa」と表示されます。12. 日付データのフォーマット
SQL>SELECT DATE_FORMAT(start_time,"%Y-%m-%d") as "时间";
1. データのグループ化 (最大、 min,avg,sum,count)
SQL>SELECT MAX(sal),MIN(age),AVG(sal),SUM(sal) from emp; SQL>SELECT * FROM emp where sal=(SELECT MAX(sal) from emp)); SQL>SELEC COUNT(*) FROM emp;
SQL>SELECT deptno,MAX(sal),AVG(sal) FROM emp GROUP BY deptno; SQL>SELECT deptno, job, AVG(sal),MIN(sal) FROM emp group by deptno,job having AVG(sal)<2000;
3. 複数テーブル クエリ
SQL>SELECT e.name,e.sal,d.dname FROM emp e, dept d WHERE e.deptno=d.deptno order by d.deptno; SQL>SELECT e.ename,e.sal,s.grade FROM emp e,salgrade s WHER e.sal BETWEEN s.losal AND s.hisal; Select a.*, b.x, c.y from a left outer join (Select * from tablex where condition1)b on a.id=b.id left outer join (Select * from tabley where condition2)c on a.id=c.id where condition3;
4. 自己結合 (同じテーブルの接続クエリを参照)
SQL>SELECT er.ename, ee.ename mgr_name from emp er, emp ee where er.mgr=ee.empno;
5.1 単一行のサブクエリ
SQL>SELECT ename FROM emp WHERE deptno=(SELECT deptno FROM emp where ename='SMITH');
5.2 複数行のサブクエリ
SQL>SELECT ename,job,sal,deptno from emp WHERE job IN (SELECT DISTINCT job FROM emp WHERE deptno=10);
in とexists の違い:exists() の後のサブクエリは相関サブクエリと呼ばれ、リストの値を返しません。 true または false の結果を返すだけで、メイン クエリを 1 回実行し、その後サブクエリで対応する結果をクエリするという操作方法です。 trueの場合は出力され、そうでない場合は出力されません。次に、メイン クエリの各行に基づいてサブクエリでクエリを実行します。 in() の後のサブクエリは結果セットを返します。つまり、exists() とは実行順序が異なります。サブクエリは最初に結果セットを生成し、次にメイン クエリはその結果セットにアクセスして、要件を満たすフィールドのリストを検索します。要件を満たしている場合は出力されます。要件を満たしていない場合は出力されません。
SQL>SELECT ename,sal,deptno FROM emp WHERE sal> ALL (SELECT sal FROM emp WHERE deptno=30);或SQL>SELECT ename,sal,deptno FROM emp WHERE sal> (SELECT MAX(sal) FROM emp WHERE deptno=30);
5.4 ANY
SQL>SELECT ename,sal,deptno FROM emp WHERE sal> ANY (SELECT sal FROM emp WHERE deptno=30);或SQL>SELECT ename,sal,deptno FROM emp WHERE sal> (SELECT MIN(sal) FROM emp WHERE deptno=30);
5.5 複数列のサブクエリ
SQL>SELECT * FROM emp WHERE (job, deptno)=(SELECT job, deptno FROM emp WHERE ename='SMITH');
SQL>SELECT emp.deptno,emp.ename,emp.sal,t_avgsal.avgsal FROM emp,(SELECT emp.deptno,avg(emp.sal) avgsal FROM emp GROUP BY emp.deptno) t_avgsal where emp.deptno=t_avgsal.deptno AND emp.sal>t_avgsal.avgsal ORDER BY emp.deptno;
SQL>SELECT a2.* FROM (SELECT a1.*, ROWNUM rn FROM (SELECT * FROM emp ORDER BY sal) a1 WHERE ROWNUM<=10) a2 WHERE rn>=6;
SQL>CREATE TABLE mytable (id,name,sal,job,deptno) AS SELECT empno,ename,sal,job,deptno FROM emp;
SQL>SELECT ename, sal, job FROM emp WHERE sal>2500 UNION(INTERSECT/UNION ALL/MINUS) SELECT ename, sal, job FROM emp WHERE job='MANAGER';
合并查询的执行效率远高于and,or等逻辑查询。
5.10 使用子查询插入数据
SQL>CREATE TABLE myEmp(empID number(4), name varchar2(20), sal number(6), job varchar2(10), dept number(2));
先建一张空表;
SQL>INSERT INTO myEmp(empID, name, sal, job, dept) SELECT empno, ename, sal, job, deptno FROM emp WHERE deptno=10;
再将emp表中部门号为10的数据插入到新表myEmp中,实现数据的批量查询。
5.11 使用了查询更新表中的数据
SQL>UPDATE emp SET(job, sal, comm)=(SELECT job, sal, comm FROM emp where ename='SMITH') WHERE ename='SCOTT';
相关免费学习推荐:SQL视频教程
以上が一般的な SQL クエリ ステートメントは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











SQLコマンドは、DQL、DDL、DML、DCL、TCLのMySQLの5つのカテゴリに分割され、データベースデータの定義、操作、制御に使用されます。 MySQLは、語彙分析、構文分析、最適化、実行を通じてSQLコマンドを処理し、インデックスとクエリオプティマイザーを使用してパフォーマンスを向上させます。使用法の例には、データクエリの選択を選択し、マルチテーブル操作に参加します。一般的なエラーには、構文、ロジック、パフォーマンスの問題、および最適化戦略には、インデックスの使用、クエリの最適化、適切なストレージエンジンの選択が含まれます。

SQLはリレーショナルデータベースを管理するための標準言語であり、MySQLは特定のデータベース管理システムです。 SQLは統一された構文を提供し、さまざまなデータベースに適しています。 MySQLは軽量でオープンソースで、パフォーマンスは安定していますが、ビッグデータ処理にはボトルネックがあります。

SQLはリレーショナルデータベースを管理するための標準言語であり、MySQLはSQLを使用するデータベース管理システムです。 SQLは、CRUD操作を含むデータベースと対話する方法を定義しますが、MySQLはSQL標準を実装し、ストアドプロシージャやトリガーなどの追加機能を提供します。

SQLの専門家になるには、次の戦略を習得する必要があります。1。テーブル、行、列、インデックスなどのデータベースの基本概念を理解する必要があります。 2。解析、最適化、実行プロセスなど、SQLのコア概念と作業原則を学びます。 3。CRUD、複雑なクエリ、ウィンドウ関数など、基本的および高度なSQL操作に習熟しています。 4.マスターデバッグスキルと説明コマンドを使用して、クエリパフォーマンスを最適化します。 5.実践を通じて学習の課題を克服し、学習リソースを利用し、パフォーマンスの最適化を重視し、好奇心を維持します。

SQLとMySQLの違いは、SQLがリレーショナルデータベースの管理と操作に使用される言語であり、MySQLはこれらの操作を実装するオープンソースデータベース管理システムです。 1)SQLを使用すると、ユーザーはデータを定義、操作、および照会し、CreateTable、Insert、Selectなどのコマンドを介してそれを実装できます。 3)SQLの作業原則はリレーショナル代数に基づいており、MySQLはクエリオプティマイザーやインデックスなどのメカニズムを通じてパフォーマンスを最適化します。

データ管理におけるSQLの役割は、クエリ、挿入、更新、削除を介してデータを効率的に処理および分析することです。 1.SQLは、ユーザーが構造化された方法でデータベースと通信できるようにする宣言言語です。 2。使用例には、基本的な選択クエリと高度な参加操作が含まれます。 3.句の忘却や誤用の結合などの一般的なエラーは、説明コマンドを介してデバッグできます。 4。パフォーマンスの最適化には、インデックスの使用と、コードの読みやすさや保守性などのベストプラクティスに従うことが含まれます。

実際のアプリケーションでは、SQLは主にデータクエリと分析、データ統合とレポート、データのクリーニングと前処理、高度な使用と最適化、複雑なクエリの処理と一般的なエラーの回避に使用されます。 1)データのクエリと分析を使用して、最も販売製品を見つけることができます。 2)データの統合とレポートは、参加操作を通じて顧客の購入レポートを生成します。 3)データのクリーニングと前処理は、異常な年齢記録を削除できます。 4)高度な使用と最適化には、ウィンドウ関数の使用とインデックスの作成が含まれます。 5)CTEと結合を使用して、SQLインジェクションなどの一般的なエラーを回避するために複雑なクエリを処理できます。

SQLは、データベースの操作のコアツールであり、データベースのクエリ、操作、管理に使用されます。 1)SQLでは、データクエリ、操作、定義、制御など、CRUD操作を実行できます。 2)SQLの作業原則には、解析、最適化、実行の3つのステップが含まれます。 3)基本的な使用には、テーブルの作成、挿入、クエリ、更新、削除が含まれます。 4)高度な使用法は、結合、サブクエリ、ウィンドウの機能をカバーします。 5)一般的なエラーには、構文、ロジック、パフォーマンスの問題が含まれます。これは、データベースエラー情報を介してデバッグされ、クエリロジックを確認し、説明コマンドを使用します。 6)パフォーマンスの最適化のヒントには、インデックスの作成、Select*の回避、およびJoinの使用が含まれます。
