MariaDB选择仅在30天内到期的帐户的所有记录

时间:2017-12-11 10:14:37

标签: mysql mariadb

如何仅使用 SELECT记录使用其帐户根据max()到期日期在30天后过期的MariaDB?

<{1}} 的内容:如果今天是2017年12月7日及以下帐户“a”的最长截止日期为2018年6月1日然后绝对不会为具有所需SELECT查询的帐户“a”返回任何记录,无论此表包含比今天的日期更早的帐户“a”的行。

选择:帐户“b”有两条记录且SELECT条记录少于30天;行max() 4是从<{1}}查询中返回 行的行。

id

虽然我最严格的测试最终失败了,但我已经在各个方面花费了一些时间。这是我工作的一点:

SELECT

1 个答案:

答案 0 :(得分:2)

  1. 您已经注意到您想要MAX
  2. 您希望每个帐户MAX,转换为SQL中的GROUP BY account
  3. 您只想显示某些帐户,即特定日期范围内MAX的帐户。聚合标准属于HAVING子句。
  4. 因此:

    select account
    from mytable
    group by account
    having max(expiration) between current_date and current_date + interval 30 day;