Re: [SQL ] 請問語法問題
我自己回自己文好了,比較明顯
原先的寫法呀…不跑售出日期約7秒,跑售出日期5分鐘以上才可以跑完
後來想到一個寫法如下,跑售出日期才八秒:
SELECT SUPNO.SUP_NO,SUPNO.NAM,PRDNO01.PRD_NO,PRDNO01.WHR,
(SELECT MAX(A.DAT)
FROM SALNO A
WHERE A.SAL_NO IN (SELECT B.SAL_NO
FROM SALNO01 B
WHERE B.PRD_NO = PRDNO01.PRD_NO AND
B.WHR = PRDNO01.WHR
)
) AS DAT1,
(SELECT MAX(A.DAT)
FROM SALNO A
WHERE A.SAL_NO IN (SELECT C.SAL_NO
FROM SALNO02 C
WHERE C.PRD_NO = PRDNO01.PRD_NO AND
C.WHR = PRDNO01.WHR
)
) AS DAT2
FROM PRDNO
LEFT OUTER JOIN SUPNO ON SUPNO.SUP_NO = CUSNO.SUP_NO
LEFT OUTER JOIN PRDNO01 ON PRDNO01.PRD_NO = PRDNO.PRD_NO
在 While 迴圈裡判斷是DAT1大,還是DAT2大
但可惜的是…他可以跑DB2、MS SQL,卻不能跑PARDOX
後來就把DAT1及DAT2的語法移到WHILE裡跑
這樣要花1分50多秒…
還有更好的解法嗎?
因為不要售出欄位只需要七秒,但多一個欄位跑1分50多秒有點久
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.171.80.96
推
08/30 11:47, , 1F
08/30 11:47, 1F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 3 篇):