ホームページ >毎日のプログラミング >mysqlの知識 >mysqlでのunionとunion allの使用法
MySQL の UNION と UNION ALL は、結果セットをマージするために使用されます。違いは、重複行の処理方法にあります。 UNION は重複した行を削除しますが、UNION ALL はすべての行を保持します。 UNION 構文: SELECT カラム 1、カラム 2、...FROM テーブル 1 UNION SELECT カラム 1、カラム 2、...FROM テーブル 2; UNION ALL 構文: SELECT カラム 1、カラム 2、...FROM テーブル 1 UNION ALL SELECT カラム 1、カラム 2、...FROM テーブル 2;
MySQL での UNION および UNION ALL の使用MySQL では、UNION と UNION ALL は 2 つ以上の SELECT ステートメントの結果セットをマージするために使用される演算子です。それらの主な違いは、重複行の処理方法です。
UNIONUNION 演算子は、結果セットをマージするときに重複行を自動的に削除します。各結果セットから一意の行のみを返します。
UNION ALLUNION ALL 演算子は、結果セットをマージするときに重複行を含むすべての行を保持します。 2 つ以上の結果セット内のすべての行を単純に連結します。
使用法UNION および UNION ALL の構文は次のとおりです:
<code class="sql">SELECT 列1, 列2, ... FROM 表1 UNION SELECT 列1, 列2, ... FROM 表2; SELECT 列1, 列2, ... FROM 表1 UNION ALL SELECT 列1, 列2, ... FROM 表2;</code>例
Students
と Teachers
:<pre class="brush:php;toolbar:false"><code class="sql">CREATE TABLE Students (
id INT NOT NULL PRIMARY KEY,
name VARCHAR(255) NOT NULL
);
CREATE TABLE Teachers (
id INT NOT NULL PRIMARY KEY,
name VARCHAR(255) NOT NULL
);</code></pre>
という 2 つのテーブルがあるとします。UNION と UNION ALL を使用して、これらの
列を結合できます。 2 つのテーブル : <pre class="brush:php;toolbar:false"><code class="sql">-- 使用 UNION 移除重复行
SELECT name
FROM Students
UNION
SELECT name
FROM Teachers;
-- 使用 UNION ALL 保留所有行,包括重复行
SELECT name
FROM Students
UNION ALL
SELECT name
FROM Teachers;</code></pre>
UNION と UNION ALL の結果セットには同じ数の列が必要で、対応する列のデータ型は次のとおりです。互換性がある。
以上がmysqlでのunionとunion allの使用法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。