我在第一个seminarsessions
中有两个数据库表,有:
id | knowntime |
--------+--------------+
1 | 1 |
2 | 0 |
3 | 1 |
在第二个表seminarsessions_date
中,有每个日期
的时间戳
以及datefrom
和dateuntil
此日期:
id | dateid | seminarsessionid | datefrom | dateuntil
--------+--------------+------+----------+----------
1 | 312 | 3 |1462863600| 1462867200
2 | 123 | 3 |1450944000| 1451206800
3 | 543 | 3 |1464868800| 1464872400
如何仅显示每个
研讨会的已知时间第一个
日期和最后
日期直到?
最佳答案
您可以使用派生表来完成此操作,其中包含表seminarsessions_date
中已聚合的值:
SELECT t1.id, t1.knowntime, t2.datefrom, t2.dateuntil
FROM seminarsessions
LEFT JOIN (
SELECT seminarsessionid,
MIN(datefrom) AS datefrom,
MAX(dateuntil) AS dateuntil
FROM seminarsessions_date
GROUP BY seminarsessionid
) AS t2 ON t1.id = t2.seminarsessionid
派生表t2
包含第一个datefrom
和最后dateuntil
值每个seminarsessionid
。
关于mysql - 仅第一个开始日期和最后一个完成日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37658749/