gpt4 book ai didi

mysql - 检查一段时间内的最大记录数

转载 作者:行者123 更新时间:2023-11-29 22:22:38 26 4
gpt4 key购买 nike

我有一个带有“日期”列(时间戳)的表。我想要实现的是检查插入一行后在单个 24 小时内是否包含不超过 3 条记录,例如:

我有以下日期的记录:

1. 2015-05-31 23:14:00
2. 2015-06-01 02:07:00
3. 2015-06-01 15:16:00

所以现在我应该无法插入日期为(例如)2015-06-01 16:01:002015-06-01 的行01:01:00 但我应该能够添加日期为的记录(例如):2015-06-01 23:50:002015-05 -31 01:05:00

我怎样才能实现这个目标?

最佳答案

有一个小技巧,你可以用纯 SQL 来解决这个问题

SET @DATE = '2015-05-31 1:14:00';

INSERT tbldate(inputdate)
SELECT @DATE FROM
(
(
SELECT
COUNT(*) AS c
FROM tbldate AS t1 INNER JOIN tbldate AS t2
WHERE
t1.inputdate <= t2.inputdate AND
t2.inputdate <= t1.inputdate + INTERVAL 24 HOUR AND
t1.inputdate BETWEEN @DATE - INTERVAL 24 HOUR AND @DATE
GROUP BY
t1.inputdate
)
UNION ALL
(SELECT 0 AS c)
) AS r
HAVING MAX(r.c) < 2

其中@DATE是您要插入的日期。

关于mysql - 检查一段时间内的最大记录数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30566787/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com