0
是否可以在UsageCounts Select()查詢中使用HeaderID值?可以在子查詢中使用SELECT列值嗎?
SELECT HeaderID, HeaderName, HeaderFileName, CreatedDate, UsageCounts = (
SELECT
COUNT(ClassXML.value('(/Data/prpID)[1]', 'INT'))
FROM CustomContent
WHERE ClassXML.value('(/Data/prpID)[1]', 'INT') = HeaderID
)
FROM Headers
這是SQL Server 2008 R2的
更新:我想我得到一個結果集..它只是用了8分鐘。任何改進?
以提高性能,可能得到的headerid,在CTE從XML內容計數,然後加入與頭部表。 – radar 2014-11-20 19:45:07
這可能沒有幫助。 CTE就像函數一樣,每次在查詢中看到一個函數都可以重新運行。 – 2014-11-20 20:16:07
可能會將子查詢結果存儲在臨時表中,因爲XML提取在sql server中速度很慢。 – radar 2014-11-20 21:24:13