2016-06-23 66 views
1

我想製作一個viww,查找角色庫存中排名前五的最高數量項目,同時也是顯示還有多少其他人也擁有該項目的列。查詢爲一個選擇的附加列計算行

  • CHARACTERS

    • CHARID PK
  • INVENTORY

    • ITEMID
    • CHARID
    • 孔定量TY
  • 項目
    • ITEMID

這是我走到這一步,

CREATE VIEW vwTop5 
AS 
SELECT TOP 5 INVENTORY.itemID, INVENTORY.charID,quantity,COUNT(SELECT * 
FROM INVENTORY) 
FROM INVENTORY 
WHERE INVENTORY.charID = 3 

我知道這是什麼上面是錯誤的,但可能你們,請展示我該怎麼辦才能修復它? :)

+2

TOP 5,但沒有ORDER BY? – jarlh

回答

1

你接近:

CREATE VIEW vwTop5 
AS 
SELECT TOP 5 INVENTORY.itemID, INVENTORY.charID,quantity, 
     (SELECT COUNT(*) FROM INVENTORY) as cnt 
FROM INVENTORY 
WHERE INVENTORY.charID = 

像@FelixPamittan說,你需要添加一個ORDER BY子句指定你想要的TOP 5記錄。

+0

添加'ORDER BY' –

+0

是的,但'ORDER BY'是什麼? :) – sagi

+0

感謝他們的工作:) – Tristan