【发布时间】:2015-11-30 21:35:15
【问题描述】:
我的 SQL 非常生疏,已经有几年了,但我需要编写一个查询来修复我拥有的表中的某些内容。
存在错误的重复项,并非每一列都相同,但我知道至少有一个。
所以我有这个有效的查询:
SELECT
[IntMsgID], [SortDate], COUNT(*)
FROM
[databasename].[dbo].[tblDoc]
GROUP BY
[IntMsgID], [SortDate]
HAVING
COUNT(*) >= 2
AND [IntMsgID] IS NOT NULL
它识别有问题的文件。然后,我需要做的是从中获取结果,并简单地使用 Y 或 1 的值更新另一个字段。
我已经完成了搜索,似乎我尝试插入的任何查询都失败了,例如
UPDATE [databasename].[dbo].[tblDoc] AS t
INNER JOIN
(SELECT [IntMsgID] msgid
FROM [databasename].[dbo].[tblDoc]
GROUP BY [IntMsgID]) t1 ON t.[IntMsgID] = t1.[IntMsgID]
SET [JG_SQLDupe] = 'Y'
我在“AS”、“INNER”和“t1”处遇到语法错误
【问题讨论】:
-
谢谢,我会看看那个帖子。我自己没有找到它
标签: sql-server