Kin*_*tic 3 mysql sql database
我有一个类似以下的MySQL:
Events
+----+------+--------------------------------+
| id | name | sites_id | created |
+----+------+--------------------------------+
| 1 | test | 1 | 2013-11-01 00:00:00 |
| 2 | test | 1 | 2013-11-02 00:00:00 |
| 3 | test | 2 | 2013-11-13 00:00:00 |
| 4 | test | 3 | 2013-11-14 00:00:00 |
| 5 | test | 4 | 2013-11-25 00:00:00 |
+----+------+----------+---------------------+
Run Code Online (Sandbox Code Playgroud)
我想要选择在48小时内创建并具有相同站点ID的事件.(在这个例子中我会期望ID 1和2).
任何帮助都会受到赞赏,因为我已经在SQL中仅绘制了如何做到这一点的空白.
谢谢
尝试这样的事情:
SELECT DISTINCT e1.*
FROM events e1
INNER JOIN events e2 ON e1.sites_id = e2.sites_id
AND e1.id <> e2.id
WHERE ABS(datediff(e1.created, e2.created)) <= 2;
Run Code Online (Sandbox Code Playgroud)
这会给你结果:
ID NAME SITES_ID CREATED
2 test 1 November, 02 2013 00:00:00+0000
1 test 1 November, 01 2013 00:00:00+0000
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1429 次 |
| 最近记录: |