2017-10-16 9 views
0

私はBIアプリケーションで後でID化されるいくつかのデータ型を持つ単一のデータソースを作成しようとしています(そして何も変更することはできません)。各タイプのID'ed by列タイプ以下の例では、基本的に私は2つのテーブルを持っていますが、私は同時にjoin/unionをしたい、私はjoinを使ってプレイしようとしました。あなたはそれが可能だと思いますか?入力テーブルではダイナミックな処理が行われているので、すべてのテーブルに対応するプリセットカラムを使用するのは難しいです。 これは私の入力です:TSQLの参加とワンステップでの結合に挑戦するのは難しいですか?

;WITH cte1 AS (SELECT 'A' type, 'alpha1' rec1, 'bravo1' rec2 UNION 
SELECT 'A' type, 'alpha2' rec1, 'bravo2' rec2 UNION 
SELECT 'A' type, 'alpha3' rec1, 'bravo3' rec2) 
, cte2 AS (
SELECT 'X' type, 'zulu01' recX UNION 
SELECT 'X' type, 'zulu02' rexX) 

、これは出力

;WITH cteWanted AS (SELECT 'A' type, 'alpha1' rec1, 'bravo1' rec2, NULL recX UNION 
SELECT 'A' type, 'alpha2' rec1, 'bravo2' rec2, NULL recX UNION 
SELECT 'A' type, 'alpha3' rec1, 'bravo3' rec2, NULL recX UNION 
SELECT 'X' type, NULL rec1, NULL rec2, 'zulu01' recX UNION 
SELECT 'X' type, NULL rec1, NULL rec2, 'zulu02' recX) 

SELECT * FROM cteTarget 

enter image description here

+0

「cte1」と「cte2」をどのように「結合」しようとしましたか? 'cte1 unionからのrecXとして[type]、NULL、NULL、recxをcte2から選択する' [type]、rec1、rec2、Cast(NULLはVarChar(10)としてNULL)を選択しますか? – HABO

+0

HI Habo、確かに動作しますが、私の場合は列の設定が変更されていますので、別のものと一緒に試してみてください。 –

+0

おそらく、Rec1、rec2、recxがどのようにこれらの値を思いついたか説明できます。このSQLサーバーですか? – maSTAShuFu

答えて

0

Txのすべてたかったが、私はHABO溶液で行く必要があることに気づきました。

関連する問題