在SQLite中,可以使用日期和时间函数对两个日期进行比较。以下是一个示例代码,演示如何比较两个日期的年份。
-- 创建一个示例表
CREATE TABLE IF NOT EXISTS my_table (
start_date TEXT,
end_date TEXT
);
-- 插入示例数据
INSERT INTO my_table (start_date, end_date)
VALUES ('2022-01-01', '2023-01-01'),
('2020-01-01', '2021-01-01'),
('2021-01-01', '2022-01-01');
-- 比较两个日期的年份
SELECT *,
strftime('%Y', start_date) AS start_year,
strftime('%Y', end_date) AS end_year,
CASE
WHEN strftime('%Y', start_date) = strftime('%Y', end_date) THEN '相同年份'
ELSE '不同年份'
END AS year_comparison
FROM my_table;
这个示例代码创建了一个名为my_table
的表,并插入了一些示例数据。然后使用strftime
函数从日期字符串中提取年份,并使用CASE
语句比较两个日期的年份是否相同。结果集中包含了原始日期、提取的年份以及两个日期的年份比较结果。
请注意,这个示例假设日期存储为文本类型。如果日期存储为SQLite的日期类型(如DATE
或DATETIME
),则不需要使用strftime
函数进行转换。