我有一个MySQL表,其中有两个不同的Timestamp列:created
和lastSent
。我想查询该表,只检索其lastSent
时间戳比created
早几周的记录。
╔════╦═════════╦══════════╗
║ ID ║ created ║ lastSent ║
╠════╬═════════╬══════════╣
║ 1 ║ Aug 18 ║ Aug 25 ║
╠════╬═════════╬══════════╣
║ 2 ║ Aug 11 ║ Aug 25 ║
╠════╬═════════╬══════════╣
║ 3 ║ Aug 19 ║ Aug 25 ║
╠════╬═════════╬══════════╣
║ 4 ║ Aug 20 ║ Aug 25 ║
╠════╬═════════╬══════════╣
║ 5 ║ Aug 3 ║ Aug 24 ║
╚════╩═════════╩══════════╝
例如,我要查找的查询将给我记录1、2和5,但没有给我3和4。
非常感谢!我希望我解释得足够好。
最佳答案
您也可以将问题写为:
查找created
和lastSent
具有相同工作日的行。
那么答案将是显而易见的:
SELECT *
FROM mytable
WHERE WEEKDAY(created) = WEEKDAY(lastSent);