为什么这个 SQLite 查询不允许我转换整数和减法



我在 Azure 机器学习中有多个列,每个列都有一个小时、年、日、分钟等作为日期。我需要将此小时从 UTC 转换为 EDT,然后将其设置为日期字符串,例如

年/月/日:SS

这样,我可以进行内部连接。我尝试过使用 CAST、CONVERT 和其他 SQLite 函数,但这些组合都不起作用。这是我现在所处的位置:

select *
CAST([Col11] as int) -4 as EDTHour
([Col8] || '/' || [Col9] || '/' || [Col10] || ' ' || EDTHour|| ':' || [Col12]) as WeatherTime from t1
select 'Time Stamp' as secondTableTime from t2
SELECT *
FROM t1
INNER JOIN t2
ON t1.WeatherTime=t2.secondTableTime

但是,它永远不会让我将 varchar 列 Col11 转换为整数或十进制。我错过了什么?

不确定是否可以在另一列的串联中使用列别名。

试试这个:

select ([Col8] || '/' || [Col9] || '/' || [Col10] || ' ' || (Cast([Col11] as int) - 4) || ':' || [Col12]) as WeatherTime

也许这会让你到达你想去的地方。

最新更新