60得票7回答
SQL删除特定范围内的记录

对于有经验的人来说,这可能是一个非常简单的问题,但我只想知道在SQL表中删除几百条记录的最安全方法。这些记录落在特定范围内。 例如,我需要删除ID在79和296之间的行: 我担心如果我说删除所有ID大于79且小于296的记录,那么它可能会删除整个表。

60得票2回答
删除所有时间戳早于x天的行。

我想从我的数据库中的特定表中删除时间戳早于180天的所有行。 我尝试了这个:DELETE FROM on_search WHERE search_date < DATE_SUB(NOW(), INTERVAL 180 DAY); 但是这删除了所有行,而不仅仅是早于6个月的行。 我在o...

57得票7回答
在一个SQL Server存储过程中计算删除行的数量

在SQL Server 2005中,是否有一种删除行并告知实际删除行数的方法?可以使用相同条件的select count(*)语句,但我需要它是完全可信的。我的第一个想法是使用@@ROWCOUNT变量,但它没有设置,例如:delete from mytable where datefiel...

56得票4回答
如何删除具有不同ID的多行数据?

我想要做这样的事情:DELETE FROM table WHERE id IN (SELECT ....) 我该如何做到这一点?

50得票1回答
如何在MySQL中删除具有2个列作为复合主键的多行记录?

我的innodb表有以下结构:4列(CountryID, Year, %Change, Source),其中2列(CountryID, Year)是主键。除了使用for循环逐行删除之外,如何批量删除多行? 我正在寻找类似于DELETE FROM CPI WHERE CountryID A...

50得票3回答
事务内部使用TSQL的Try/Catch还是相反?

我正在编写一个脚本,将从多个表中删除记录,但在删除之前,必须返回一个计数以供用户在提交之前确认。 这是该脚本的概要。BEGIN TRANSACTION SCHEDULEDELETE BEGIN TRY DELETE -- delete commands full ...

48得票6回答
删除除一个外的所有重复记录。

我有一个表格,应该记录给定个人资料(用户 ID 到用户 ID 对)的访问者。结果我的 SQL 查询有点问题,产生了多个对而不是预期的单个对。事后看来,我应该对每个 id+id 对强制执行唯一约束。 现在,我该如何清理表格?我想做的是删除所有重复的对并只留下一个。 例如,将这个: 2351...

47得票9回答
如何在不使用临时表的情况下删除MySQL表中的所有重复记录

我看过很多类似的内容,但没有一个完全符合我想要的。 我有一张名为TableA的表,其中包含用户对可配置问卷的答案。列是member_id, quiz_num, question_num, answer_num。 某些成员的答案被提交了两次。所以我需要删除重复记录,但确保留下一行。 由于没有主列...

46得票4回答
从一个表中使用连接删除数据

我正在尝试根据另一个数据库的选择条件删除一个数据库中的记录。我们有两个表,emailNotification 存储工作和电子邮件列表。然后是 jobs表。我想清除已关闭的工作的 emailNotifications。我在Stackoverflow上找到了一些早期的示例,让我使用这种语法(之前我...

42得票7回答
谷歌BigQuery删除行?

有没有关于在Google Bigquery中删除数据表中某些部分的支持计划?我们目前遇到的问题是,我们使用它来分析随时间收集的数据点。我们想要查询过去X天的数据,然而在过去X天的数据之后,我们不再需要将数据存储在BigQuery中。 当前唯一的想法是删除整个数据表,然后重新创建并加载X天的数...