SQL:在 SQL 的 WHERE 子句中使用时间戳

问题描述 投票:0回答:1

我需要过滤结果才能仅查看 2023 年的数据。但我的 WHERE 子句也捕获了 2024 年的数据,我不确定是什么导致了这个问题。有人知道我需要修复什么才能查看 2023 年的结果吗?顺便说一句 - 日期在我的数据集中显示为字符串。

SELECT id, name, performance, record_date
FROM records
WHERE date_parse(record_date,'%Y-%m-%d') >= DATE_ADD('year', -1, TIMESTAMP '2024-01-01 00:00:00')

谢谢你。

sql where-clause
1个回答
2
投票

您不需要解析 date 或 dateadd 来获取 2023 年的数据。只需检查年份:

SELECT id, name, performance, record_date
FROM records
WHERE year(record_date) = 2023;
© www.soinside.com 2019 - 2024. All rights reserved.