C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[5]: MySQLで外部結合(Full)みたいなの


(過去ログ 96 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■57193 / inTopicNo.1)  MySQLで外部結合(Full)みたいなの
  
□投稿者/ みお (7回)-(2011/02/16(Wed) 22:13:55)

分類:[データベース全般] 

やりたいこと
下記の2つSELECT文の集計をとりたいです

TBL_AAAとTBL_BBBのCol1,Col2,Col3を外部結合してUNION ALL
でうまくいく気がするのですがどうにもわかりません
よろしくお願いします

結果は
Col1,Col2,Col3,SUM(Col4)+SUM(Col5)
を出力したいです

SELECT Col1,Col2,Col3,SUM(Col4) AS SumData
FROM TBL_AAA
WHERE
Col1 IS NOT NULL
GROUP BY Col1,Col2,Col3

SELECT Col1,Col2,Col3,SUM(Col5) AS SumData
FROM TBL_BBB
WHERE
Col1 IS NOT NULL
GROUP BY Col1,Col2,Col3

引用返信 編集キー/
■57195 / inTopicNo.2)  Re[1]: MySQLで外部結合(Full)みたいなの
□投稿者/ 囚人 (584回)-(2011/02/16(Wed) 23:34:01)
SELECT
	Col1,
	Col2,
	Col3,
	Sum(Col4) + Sum(Col5)
FROM(
	SELECT Col1,Col2,Col3,SUM(Col4) AS Col4, 0 as Col5
	FROM TBL_AAA
	WHERE 
	Col1 IS NOT NULL 
	GROUP BY Col1,Col2,Col3

	UNION

	SELECT Col1,Col2,Col3,SUM(Col5) AS Col4, 0 as Col5 
	FROM TBL_BBB
	WHERE 
	Col1 IS NOT NULL 
	GROUP BY Col1,Col2,Col3
) as T
GROUP BY Col1,Col2,Col3


かな?

引用返信 編集キー/
■57197 / inTopicNo.3)  Re[2]: MySQLで外部結合(Full)みたいなの
□投稿者/ みお (8回)-(2011/02/17(Thu) 00:57:59)
ありがとうございます
できました!

0 as Col5
これはどんな処理でしょうか?

引用返信 編集キー/
■57201 / inTopicNo.4)  Re[3]: MySQLで外部結合(Full)みたいなの
□投稿者/ マサヤ (261回)-(2011/02/17(Thu) 09:17:35)
>0 as Col5
>これはどんな処理でしょうか?
→unionするときは、抽出するカラムの項目数を合わせないといけないから。

引用返信 編集キー/
■57207 / inTopicNo.5)  Re[4]: MySQLで外部結合(Full)みたいなの
□投稿者/ 囚人 (585回)-(2011/02/17(Thu) 12:16:46)
間違えていました。正しくは以下のつもりでした。

SELECT
	Col1,
	Col2,
	Col3,
	Sum(Col4) + Sum(Col5)
FROM(
	SELECT Col1,Col2,Col3,SUM(Col4) AS Col4, 0 as Col5
	FROM TBL_AAA
	WHERE 
	Col1 IS NOT NULL 
	GROUP BY Col1,Col2,Col3

	UNION

	SELECT Col1,Col2,Col3, 0 as Col4, SUM(Col5) AS Col5
	FROM TBL_BBB
	WHERE 
	Col1 IS NOT NULL 
	GROUP BY Col1,Col2,Col3
) as T
GROUP BY Col1,Col2,Col3


もしくは、

SELECT
	Col1,
	Col2,
	Col3,
	Sum(Col4)
FROM(
	SELECT Col1,Col2,Col3,SUM(Col4) AS Col4
	FROM TBL_AAA
	WHERE 
	Col1 IS NOT NULL 
	GROUP BY Col1,Col2,Col3

	UNION

	SELECT Col1,Col2,Col3, SUM(Col5) AS Col4
	FROM TBL_BBB
	WHERE 
	Col1 IS NOT NULL 
	GROUP BY Col1,Col2,Col3
) as T
GROUP BY Col1,Col2,Col3

引用返信 編集キー/
■57212 / inTopicNo.6)  Re[5]: MySQLで外部結合(Full)みたいなの
□投稿者/ みお (10回)-(2011/02/17(Thu) 13:14:24)
納得しました
ありがとうございます


解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -