gpt4 book ai didi

sql - 为什么这不能删除重复项

转载 作者:搜寻专家 更新时间:2023-10-30 22:24:39 26 4
gpt4 key购买 nike

我之前使用的是 MySQL,但现在我正尝试使用 MS SQL (2016) 执行类似的操作,但查询无法正常工作。我有“TEST”表,我正在尝试根据匹配的“lastname, firstname”列删除重复项。

使用最低的 ID 值:

DELETE FROM TEST
WHERE lastname NOT IN (
SELECT t.id FROM (
SELECT MIN(PersonID) id
FROM TEST
GROUP BY lastname, firstname
) t
)

列是:“PersonID”“LastName”“FirstName”“Address”“City”

错误:

Msg 245, Level 16, State 1, Line 1 Conversion failed when converting the varchar value 'JOHN' to data type int.

最佳答案

您想保留具有最小 id 的行吗?使用 EXISTS:

delete t from test t
where exists (
select 1 from test
where firstname = t.firstname and lastname = t.lastname
and id < t.id
)

关于sql - 为什么这不能删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55013389/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com