ホームページ > データベース > mysql チュートリアル > mysqlテーブルマージクエリの結果

mysqlテーブルマージクエリの結果

PHPz
リリース: 2023-05-18 17:11:07
オリジナル
742 人が閲覧しました

mysql では、通常、データの保存形式は別のテーブルで管理されており、この方法ではデータ クエリの効率が向上しますが、管理上、一定の困難も伴います。実際のアプリケーションでは、通常、複数のサブテーブルに対してクエリ操作を実行する必要があり、この場合、MySQL のマージ テーブル クエリ機能を使用する必要があります。

テーブルのマージ クエリとは、特定のルールに従って複数のテーブルのデータを結果セットにマージすることを指します。 mysql では、テーブル結合クエリは、union、union all、join などの構文を使用して実装できます。以下では、これらの構文の使用法とクエリの効果をそれぞれ紹介します。

  1. union 構文

Union 構文では、複数のクエリ結果を 1 つの結果セットに結合して返すことができます。ユニオン操作では重複が自動的に削除されることに注意してください。すべてのデータを返す必要がある場合は、すべてユニオン操作を使用する必要があります。

構文形式は次のとおりです:

select 列名 from 表1 union select 列名 from 表2
select 列名 from 表1 union all select 列名 from 表2
ログイン後にコピー

たとえば、2 つのサブテーブル users1 と users2 があるとします。これらは同じ構造を持ち、両方に id 列と name 列があります。次の SQL クエリ ステートメントを結果セットにマージします。

select id,name from users1 union all select id,name from users2;
ログイン後にコピー
  1. join 構文

join 構文では、結合条件を指定して複数のテーブルを結合し、条件を満たすレコードを返すことができます。 。

構文形式は次のとおりです:

select 表1.列1,表2.列1 from 表1 join 表2 on 表1.列1=表2.列1
ログイン後にコピー

たとえば、2 つのサブテーブル users1 と users2 があるとします。どちらのテーブルにも都市に関連するフィールドがあります。次の SQL を使用できます。クエリ ステートメントとそれらは接続されています:

select users1.id,users1.name,users2.city from users1 join users2 on users1.city=users2.city;
ログイン後にコピー
  1. サブクエリ

サブクエリとは、select ステートメント内の別の select ステートメントのネストを指し、クエリ結果をさらにフィルターできます。

たとえば、製品 ID と取引金額を含む注文サブテーブルがあるとします。各商品の合計取引金額と平均取引金額をクエリしたいとします。次の SQL クエリを使用できます。ステートメント:

select id,sum(amount) as total,avg(amount) as average from (select id,amount from orders) as temp group by id;
ログイン後にコピー

上記は、mysql テーブル クエリの 3 つの構文の使用法と効果を示していますが、実際のアプリケーションでは、データ クエリや統計作業のニーズに応じて、対応するメソッドを選択できます。

以上がmysqlテーブルマージクエリの結果の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート