我可以在 SELECT 语句中使用变量吗?我目前正在使用:-
SELECT CAST((JULIANDAY('now') - JULIANDAY(ReadingDay)) AS INTEGER) FROM Readings WHERE (JULIANDAY('now') - JULIANDAY(ReadingDay)) > 90;
这对我来说似乎有点重复和复杂。有没有什么方法可以使用变量之类的东西来简化这个过程,这样我就不必计算两次日期差异?
尝试使用 CTE:
WITH DateDiff AS (
SELECT (JULIANDAY('now') - JULIANDAY(ReadingDay) as Days
FROM readings)
SELECT CAST(days as int)
FROM DateDiff
WHERE days >90;
DateDiff 是 CTE 的名称,您可以在主查询中调用它,因为它是一个表。