SQLITE 3 我可以在“SELECT”查询中使用变量吗

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

我可以在 SELECT 语句中使用变量吗?我目前正在使用:-

SELECT CAST((JULIANDAY('now') - JULIANDAY(ReadingDay)) AS INTEGER) FROM Readings WHERE (JULIANDAY('now') - JULIANDAY(ReadingDay)) > 90;

这对我来说似乎有点重复和复杂。有没有什么方法可以使用变量之类的东西来简化这个过程,这样我就不必计算两次日期差异?

sql sqlite
1个回答
0
投票

尝试使用 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 的名称,您可以在主查询中调用它,因为它是一个表。

© www.soinside.com 2019 - 2024. All rights reserved.