ホームページ >データベース >mysql チュートリアル >mysqlでマイナス演算子を使用するにはどうすればよいですか?
#(推奨チュートリアル:Mysql は MINUS 演算子をサポートしていませんが、MySQL JOIN を使用してシミュレートできます。構文形式は、「SELECT field list FROM table 1 LEFT JOIN table 2 ON join_predicate WHERE table 2.id IS NULL;」です。 。
mysql ビデオ チュートリアル)
SQL MINUS 演算子の概要
MINUS には、3 つの SQL 標準演算 UNION、INTERSECT、MINUS のいずれかが含まれます。 MINUS は 2 つのクエリの結果を比較し、2 番目のクエリでは出力されない、最初のクエリの異なる行を返します。 MINUS ディレクティブが 2 つの SQL ステートメントで使用されています。まず最初の SQL ステートメントによって生成された結果を検索し、次にそれらの結果が 2 番目の SQL ステートメントの結果の中にあるかどうかを確認します。存在する場合、このデータは削除され、最終結果には表示されません。 2 番目の SQL ステートメントによって生成された結果が最初の SQL ステートメントによって生成された結果に存在しない場合、データは破棄されます。 MINUS 演算子の構文については、以下で説明します。SELECT column_list_1 FROM table_1 MINUS SELECT columns_list_2 FROM table_2;MINUS 演算子を使用したクエリの基本ルールは次のとおりです。
column_list_1 と
column_list_2 の順序は同じである必要があります。
CREATE TABLE t1 ( id INT PRIMARY KEY ); CREATE TABLE t2 ( id INT PRIMARY KEY ); INSERT INTO t1 VALUES (1),(2),(3); INSERT INTO t2 VALUES (2),(3),(4);次のクエリは、t1 テーブルのクエリで異なる値を返します。 、これらの値はテーブル t2 にありますが、クエリ結果では見つかりません。
SELECT id FROM t1 MINUS SELECT id FROM t2;以下は MINUS 図の説明です:
MySQL MINUS 演算子
残念ながら、MySQL は MINUS 演算子をサポートしていません。ただし、MySQL JOIN を使用してシミュレートできます。 MINUS 2 クエリをシミュレートするには、次の構文を使用します。SELECT column_list FROM table_1 LEFT JOIN table_2 ON join_predicate WHERE table_2.id IS NULL;たとえば、次のクエリは LEFT JOIN 句を使用して、MINUS 演算子と同じ結果を返します。
SELECT id FROM t1 LEFT JOIN t2 USING (id) WHERE t2.id IS NULL;
以上がmysqlでマイナス演算子を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。