【问题标题】:Only first start date and last finish date只有第一个开始日期和最后一个完成日期
【发布时间】:2016-06-06 13:27:31
【问题描述】:

我在第一个seminarsessions中有两个db表,有:

     id     | knowntime    |  
    --------+--------------+ 
       1    | 1            |  
       2    | 0            |  
       3    | 1            |  

在第二个表seminarsessions_date 中有timestamps,每个datedatefromdateuntil 对应这个日期:

   id | dateid | seminarsessionid | datefrom | dateuntil
    --------+--------------+------+----------+----------
    1 | 312     | 3               |1462863600| 1462867200
    2 | 123     | 3               |1450944000| 1451206800
    3 | 543     | 3               |1464868800| 1464872400

如何在 knowntime 仅显示 first datefromlast dateuntileach 研讨会会话?

【问题讨论】:

    标签: mysql sql database reporting


    【解决方案1】:

    您可以使用包含来自表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 包含 first datefromlast dateuntil 每个 seminarsessionid 的值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-14
      • 1970-01-01
      • 2012-05-29
      • 1970-01-01
      • 2018-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多