最近更新したページ
2013-10-20
2013-09-29
2013-09-23
2012-01-07
2011-11-09
2011-10-23
2011-10-09
2011-10-01
2011-09-29
2011-09-03
2011-08-07
2011-08-02
2011-07-29
2011-07-10
2011-05-05
2011-05-04
2011-04-24
2011-04-13
2011-04-05
2011-03-26
2011-02-18
2011-02-15
2010-12-26
2010-12-07
2010-12-05
2010-11-23
2010-09-28
2010-09-23
2010-08-26
2010-08-22
2010-07-16
2010-01-17
2010-01-11
2009-10-04
2009-08-21
2009-08-13
2009-06-18
2009-06-01
2009-04-29
2009-02-16
2009-02-11
2009-02-03
2008-07-22
2008-07-21
2008-07-15
2008-07-14
2008-07-13
2008-07-12
2008-07-08
2008-07-05
2008-06-28
2008-06-17
2008-06-05
2008-06-02
2008-06-01
2008-05-29
2008-05-26
2008-05-21
2008-05-19
2008-05-18
2007-10-31
2007-10-27
2007-09-28
2007-09-23
2007-09-17
2007-09-16
2007-09-14
2007-09-11
2007-06-18
2007-04-15
2006-12-21
2006-11-30
2006-11-22
2006-08-17
2006-03-29
2006-03-28
2006-03-27

SQL文:ユニオンクエリー


ユニオンクエリー


SQL文:ユニオンクエリーの基本形


ユニオンクエリーは、複数テーブル(表)のフィールドを1つのレコードセットに結合し、新たなテーブルとして表示するクエリーです。
追加クエリーと異なり、元のテーブルデータは変更しません。

SELECT [Field1],[Field2],…
  FROM [Table1]
UNION
SELECT [Field2],[Field2],…
  FROM [Table2] ;
※Table1とTable2のフィールドデータを結合したレコードを表示します。もとのテーブルデータは変更しません。


▲上へ


条件を指定した抽出結果を結合する

SELECT [Field1],[Field2],…
  FROM [Table1]
 WHERE [Field = 抽出条件]
UNION
SELECT [Field2],[Field2],…
  FROM [Table2]
 WHERE [Field = 抽出条件] ;

結合したデータを並べ替える

SELECT [Field1],[Field2],…
  FROM [Table1]
UNION
SELECT [Field2],[Field2],…
  FROM [Table2]
 ORDER BY [Field ASC/DESC] ;

フィールド名を変更して表示する

SELECT [Field1] AS 変更名称1,[Field2] AS 変更名称2,…
  FROM [Table1]
UNION
SELECT [Field2],[Field2],…
  FROM [Table2] ;

フィールドを追加して結合する

SELECT [Field1],[Field2],"追加データ1(固定)" AS 追加フィールド名
  FROM [Table1]
UNION
SELECT [Field2],[Field2],"追加データ2(固定)"
  FROM [Table2] ;

フィールド数の異なるテーブルを結合する

SELECT [Field1],[Field2],[Field3]
  FROM [Table1]
UNION
SELECT [Field2],[Field2],"追加データ(固定)"
  FROM [Table2] ;


▲上へ


SQL文:UNION / UNION ALL の違いについて


ユニオン(UNION)では、複数テーブル中で選択したフィールド値が同じレコード(重複レコード)があると、抽出結果が重複しないよう調整されます。
ユニオンクオール(UNION ALL)では、レコードが重複しても、重複したまま抽出結果を返します。

SELECT [Field1],[Field2] FROM [Table1]
UNION ALL
SELECT [Field2],[Field2] FROM [Table2] ;
※Table1とTable2のフィールドデータに重複があっても、重複したままで抽出、結合結果を返します。


▲上へ


データベース・SQL文・SQLクエリー(query)関連リンク


wiki内関連ページ



外部リンク

現在なし



▲上へ
2007年09月16日(日) 22:16:06 Modified by cafeboy1




スマートフォン版で見る