【发布时间】:2015-08-16 22:10:56
【问题描述】:
我需要获取不同日期字段的记录,
表格网站:
field id
reference
created
每天我们都会添加很多记录,所以我需要做一个函数来提取所有存在的记录,其中包含刚刚添加的重复行,以做一些通知。
我无法得到的条件是当天记录与表中旧数据之间的差异应该是(1天到4天)。
如果有任何简单的查询可以在不使用事务的情况下做到这一点。
【问题讨论】:
-
select fieldId,reference,count(*) as theCount from Sites group by fieldId,reference having theCount>1... 或select field id,reference,count(*) as theCount from Sites group by field id,reference having theCount>1... 怎么样?第二个field id周围有反引号 -
或者更好的是,不要让重复开始,除非日子很长,除了清理数据无事可做
-
我认为您的问题可以写得更清楚。迄今为止的 cmets 似乎没有注意到这些不是严格的重复,而是彼此相隔 4 天内的行。此外,您的标题暗示您想要一个查询,但在问题中您说您想要一个功能。您尚未说明该表的 PK 是什么,或者至少没有说明
fieldid和reference区分每个集合的一个键以检查重复(4 天内)created值。所以,你应该更清楚你想要什么,并提供一个你迄今为止尝试过的例子。输入和输出的样本数据也会有所帮助。 -
cmets 是一个有趣的领域,在这里人们不会愚蠢到将它们扑通一声回答@Turophile。重复是 2 天还是 92 天,有什么区别。 OP可以弄清楚
-
@Drew,我的意思是这不是典型的“我没有唯一键”重复问题,而是“我需要将表中的某些行与其他行匹配日期差异是关键差异”,问题中并不清楚。
标签: mysql sql date cakephp datediff