[SQL ] 同TABLE中以欄位當條件 JOIN出新欄位
欸 我有點不知道怎麼用一句話描述
所以標題打成這樣大概會看不懂
我直接用SQL來舉例好了
我的TABLE TA 中以CX這個欄位當條件
要找出CA=XX的和CA=YY的
CA=YY若有就填入NEWY、NEWX這兩個欄位中
我的問題是,其實這個TA是簡化過的
我單獨SELECT一次SELECT * FROM TA WHERE CX='XX'
這個動作就要幾分鐘
再加上JOIN下面再SELECT一次就需要更久的時間了
想請問有沒有可以簡化這段SQL的方法?
謝謝!
SELECT X.*
,Y.CX AS NEWX
,Y.CY AS NEWY
FROM (
SELECT *
FROM TA
WHERE TA.CX = 'XX'
) X
LEFT JOIN (
SELECT *
FROM TA
WHERE TA.CX = 'YY'
) Y ON X.PK = Y.PK;
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.230.215.236
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1454401682.A.01C.html
推
02/02 17:12, , 1F
02/02 17:12, 1F
推
02/02 17:22, , 2F
02/02 17:22, 2F
→
02/02 17:25, , 3F
02/02 17:25, 3F
→
02/05 13:46, , 4F
02/05 13:46, 4F
→
02/05 13:46, , 5F
02/05 13:46, 5F
Database 近期熱門文章
PTT數位生活區 即時熱門文章