現在の方法はあまり効率的ではありません。他の人は通常CASE WHEN
を使用します それをするために。
SELECT t.uniqueID,
IN_Info1 = MAX(case when t.type = 'IN' then t.information1 end),
IN_Info2 = MAX(case when t.type = 'IN' then t.information2 end),
IN_Notes = MAX(case when t.type = 'IN' then t.Notes end),
OUT_Info1 = MAX(case when t.type = 'OUT' then t.information1 end),
OUT_Info2 = MAX(case when t.type = 'OUT' then t.information2 end),
OUT_Notes = MAX(case when t.type = 'OUT' then t.Notes end)
FROM TABLEB t
GROUP BY t.uniqueID
次に、Big Queryに組み込むには、CTEまたはDERIVED TABLE
を使用できます。-- CTE
; with Tblb as
(
SELECT t.uniqueID,
IN_Info1 = MAX(case when t.type = 'IN' then t.information1 end),
IN_Info2 = MAX(case when t.type = 'IN' then t.information2 end),
IN_Notes = MAX(case when t.type = 'IN' then t.Notes end),
OUT_Info1 = MAX(case when t.type = 'OUT' then t.information1 end),
OUT_Info2 = MAX(case when t.type = 'OUT' then t.information2 end),
OUT_Notes = MAX(case when t.type = 'OUT' then t.Notes end)
FROM TABLEB t
GROUP BY t.uniqueID
)
select *
from TableA a
inner join Tblb b ON a.uniqueID = b.uniqueID
このX1.t1.uniqueID.
は実行できません。 、X1.uniqueID
のみである必要があります