[SQL ] PIVOT 語法問題

看板Database (資料庫)作者 (Jacky)時間6年前 (2018/11/14 13:02), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/5 (看更多)
資料庫名稱:Ms-SQL 資料庫版本:2008 內容/問題描述: 資料Table A Orderno Time Price ------------------------------- 2018110101 20181101 100 2018110102 20181101 200 2018110201 20181102 300 2018110202 20181102 400 資料Table B Orderno 付款方式 付款金額 ------------------------------- 2018110101 現金 100 2018110102 信用卡 100 2018110102 現金 100 2018110201 現金 300 2018110202 信用 400 想要達查詢是 日期 金額 現金 信用卡 ------------------------------- 20181101 300 200 100 20181102 700 300 400 用Access語法可以成功 transform 付款金額 Select 日期,Sum(Price) from A join B on A.orderno = B.orderno Group by 日期 PIVOT 付款方式 但是SQL語法我試出來的結果是 日期 金額 現金 信用卡 ------------------------------- 20181101 200 200 null 20181101 100 null 100 20181102 300 300 null 20181102 400 null 400 以下是我目前的語法 Select * from (Select 日期,Sum(Price),Sum(付款金額) from A join B on A.orderno = B.orderno Group by 日期,付款方式 ) as temp PIVOT (SUM(付款金額) FOR 付款方式 IN ([現金],[信用卡])) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.135.30.56 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1542171721.A.EEA.html
文章代碼(AID): #1Rwwn9xg (Database)
文章代碼(AID): #1Rwwn9xg (Database)