我有一个包含 15 000 000 条记录的大表,突然 Select Top 停止工作。我使用 MS SQL 管理工作室。
这不起作用,查询返回 0 条记录:
SELECT TOP (10)
[Id]
,[Result]
,[DateStamp]
,[ConversionTime]
,[Converter]
,[SourceFileFormat]
,[DestinationFileFormat]
,[Ip]
,[Source]
,[Error]
,[UserId]
,[TokenId]
,[ConversionCost]
FROM [ca-v2].[dbo].[Log]
Run Code Online (Sandbox Code Playgroud)
令我惊讶的是,如果我尝试选择一个 ID 字段,它会正常工作。
工作正常:
SELECT TOP (10)
[Id]
FROM [ca-v2].[dbo].[Log]
Run Code Online (Sandbox Code Playgroud)
此外,如果我在最后添加 order by 查询也开始工作:
SELECT TOP (10)
[Id]
,[Result]
,[DateStamp]
,[ConversionTime]
,[Converter]
,[SourceFileFormat]
,[DestinationFileFormat]
,[Ip]
,[Source]
,[Error]
,[UserId]
,[TokenId]
,[ConversionCost]
FROM [ca-v2].[dbo].[Log]
Order By [DateStamp]
Run Code Online (Sandbox Code Playgroud)
我跑到DBCC CHECKTABLE
桌子上,收到以下错误:
错误:消息 8978,级别 16,状态 1,第 1 行
表错误:对象 ID 1029578706,索引 …