当前位置: 首页 > 面试题库 >

sql删除所有早于30天的行

秦德海
2023-03-14
问题内容

关于如何删除所有30天以上的行有很多问题,但是我找不到与我相同的东西,因此我可以修复它

我需要删除一些超过30天的邮件记录,带有日期的列名称命名为sendOn,并且该列中的行看起来像这样2018-01-12
12:25:00我应该如何格式化查询从表中删除包含30天以上的所有记录?

DELETE FROM messages WHERE sentOn < '2018-02-21 00:00:00';

这会工作吗?

编辑:上面的查询工作,但非常非常慢以任何方式使其更快?我试过了now()但它给出了函数错误的错误信息


问题答案:

以下代码将删除超过30天的邮件记录

DELETE FROM messages WHERE sentOn < NOW() - INTERVAL 30 DAY;

NOW()MySQL中的方法用于选择带有时间的当前日期。INTERVAL 30 DAY用于从当前日期减去30天。完成上述查询后,您可以使用该SELECT语句检查当前表。谢谢!



 类似资料:
  • 问题内容: 我想从数据库中的特定表中删除所有时间戳超过180天的行。 我已经试过了: 但这会删除所有行,而不仅仅是删除六个月以上的行。 我在on_search表中有一列称为search_date,其中包含创建该行的时间。 问题答案:

  • 问题内容: 我是bash的新手,我的任务是删除所有30天以上的文件,我可以根据文件名来解决这个问题 。 我知道我可以在包含文件的文件夹中列出所有文件。我知道我可以获取今天的日期,并可以对其进行配置以匹配文件格式 我知道我可以使用删除文件。 我如何将所有这些结合到一个bash脚本中,该脚本从今天起删除30天以上的文件? 在伪python代码中,我想它看起来像: 问题答案: 我绝不是系统管理员,但您可

  • 名 Middlename lastname dob 地址 城市 状态 电话 验证日期 它有许多相同的行,除了有效日期。例如: 我希望运行一个脚本,删除除最后一列()以外的所有匹配的重复项,只在表中保留以下内容,这是: 它不起作用,实际上弹出以下错误: 另外,我想根据字母表的最后一个字母分阶段运行它。因此,需要在某个地方添加类似这样的lastname。

  • 问题内容: 如何删除SQL Server中在10分钟后创建的所有行。谢谢。 问题答案: 假设您具有存储时间戳的列名称Date_column。您可以这样尝试,其中mi是分钟的缩写:

  • 我已经根据日期yyyy-mm-dd对配置单元表进行了分区。我想每天运行一个脚本,可以删除所有超过30天的分区,但在这种情况下,我不想超过日期。我希望它采取系统日期和删除超过30天的分区。

  • 问题内容: 天是用户输入以获得比(用户输入的天数)还早的结果的数字。例如,如果用户输入32天,则他们将获得30天之前的结果。 快速试用: 我的问题和尝试 来自输入字段的输入 在我的情况下,在Django中执行此操作的最佳方法是什么? 问题答案: 这样的事情将为你工作: