[英]SELECT * Returns no rows but, SELECT Count(*) returns non zero value
我運行以下查詢:
a. select * from TABLE_TEMP
查詢已成功執行,但未返回任何行。 返回的數據集為空且包含 0 行。 該查詢的執行計划可以從以下網址下載: Execution Plan Query a
b. select count(*) from TABLE_TEMP
該查詢也執行成功,但它返回一些有限值該查詢的執行計划可以從以下位置下載: Execution Plan Query b
你能給我任何解決這個問題的建議嗎?
PFB截圖:
您的數據庫中可能存在某種損壞。 熟悉文檔后運行DBCC CHECKDB
(或DBCC CHECKTABLE
)。 特別是關於數據庫兼容性級別的索引檢查部分以及:
在 SQL 服務器的早期版本中,每個表和每個索引的行數和頁數的值可能會變得不正確。 在某些情況下,這些值中的一個或多個甚至可能變為負數。 在 SQL Server 2005 及更高版本中,這些值始終保持正確。 因此,在 SQL Server 2005 及更高版本上創建的數據庫不應包含不正確的計數; 但是,升級到 SQL Server 2005 及更高版本的數據庫可能。
Count 是 Function in SQL 它返回 Int 值,即受影響的記錄數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.