繁体   English   中英

根据特定日期和条件 MYSQL 选择数据

[英]Select data based on specific date and criteria MYSQL

我想要做的是从数据库中选择特定舞者组的所有内容,然后按日期查找每个舞蹈的最新日期并仅显示这些内容。

请参阅附加图像,了解我希望从数据库返回的结果(红色大箭头)。 我在这个例子中没有在 9 月 11 日跳舞,但我需要最后一次跳舞(10 日),这样我就可以计算舞者在所有舞蹈中的当前水平。

我想要的示例数据

尝试

SELECT t.*
  FROM table1 t JOIN (
  SELECT dancer_id, dance, MAX(date) date
    FROM table1
   GROUP BY dancer_id, dance
) q ON t.dancer_id = q.dancer_id
   AND t.dance = q.dance
   AND t.date = q.date

这是一个SQLFiddle

示例输出:

|  id | dancer_id |                        date |      dance | level | placed |  venue |
|-----|-----------|-----------------------------|------------|-------|--------|--------|
| 143 |       130 | September, 10 2016 00:00:00 | Single Jig |     1 |      4 | (null) |
| 146 |       130 | September, 11 2016 00:00:00 |       Reel |     2 |      5 | (null) |
| 147 |       130 | September, 11 2016 00:00:00 |  Light Jig |     2 |      4 | (null) |
| 148 |       130 | September, 11 2016 00:00:00 |   Slip Jig |     2 |      4 | (null) |

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM