我想创建一个 SQL 查询来查找特定日期的条纹。
我有桌子:
id | dt |
---|---|
1 | 2023年10月12日 |
2 | 2023 年 11 月 12 日 |
3 | 2023年12月12日 |
4 | 2023年12月16日 |
5 | 2023年12月17日 |
6 | 2023年12月25日 |
7 | 2023年12月26日 |
例如,如果我查询数据:
09/12/2023
- 结果将是 0
10/12/2023
- 结果将是 3
11/12/2023
- 结果将是 2
16/12/2023
- 结果将是 2
24/12/2023
- 结果将是 0
25/12/2023
- 结果将是 2
要在 SQLite 中查找特定日期的条纹,您可以使用以下查询:
SELECT COUNT(*)
FROM (
SELECT dt,
ROW_NUMBER() OVER (ORDER BY dt) - ROW_NUMBER() OVER (PARTITION BY strftime('%Y-%m-%d', dt) ORDER BY dt) AS grp
FROM your_table_name
) t
WHERE dt = 'your_specific_date' AND grp = 0;
将
your_table_name
替换为实际的表名,将 'your_specific_date'
替换为您要查询的具体日期。