我有一张手机发票表,相关列是 Cellular_Account_id (INT)
, billing_end_date(DATE)
, 和 data_usage_GB
.
每个帐户每个月都有单独的一行。我正在尝试获取过去三个月中每个月都没有使用数据的帐户列表。
总的来说,我对数据库还很陌生,所以我什至不确定我应该搜索什么语法,或者我应该采用什么方法。
我当然可以选择WHERE data_usage_GB = 0.000 AND MONTH(billing_end_date) = month(current_date()) -1
但这只给我 1 个月范围内的信息。我不确定如何将结果组合在一起 data_usage_GB = 0.000
过去三个月中的每一个月。
最佳答案
我会按帐户分组,获取每个帐户的最大日期,然后使用 having
子句过滤它们:
SELECT cellular_account_id
FROM invoices
GROUP BY cellular_account_id
HAVING MAX(billing_end_date) < DATE_SUB(CURRENT_DATE, INTERVAL 3 MONTH)
关于mysql - 选择 3 个月前上次事件的地点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52878548/