隔离今天创建的MySql记录

时间:2019-07-26 16:00:20

标签: mysql

我正在学习MySql(一般来说是SQL),我有一个问题。我运行了一个过程,用72条记录填充表。这样做了,但是,我需要再次运行该过程,这一次它再次为表中的每个用户填充了第二条记录,现在总共有144条记录。如何隔离今天创建的最新记录?

2 个答案:

答案 0 :(得分:0)

您只需要使用createdTS列(假设您知道两次运行的时间戳是什么)即可。

SELECT * FROM `my_table` WHERE `createdTS` > '2019-07-25 15:00:00'

您还可以RANK()结束并仅获取每个用户的最新运行情况(类似this

答案 1 :(得分:0)

一个简单的解决方案是使用current_date来计算今天的日期,并使用date()来删除列的时间部分。然后:

where current_date = date(createdTS)

这对于像您这样的小型数据集来说很好。作为一般解决方案,您需要一个不需要处理每一行的查询,例如

where createdTS >= current_date and createdTS < current_date + interval 1 day