我正尝试在现有表中添加一个生成的列。我有一个TRANSACTION表,在该表中有一个名为DateTime的列(包含时间戳格式的日期和时间)。我想创建一个名为TransactionDate的虚拟列,它将包含从DateTime列派生的日期和时间。
下面是我创建的查询
ALTER TABLE PUBLIC.TRANSACTION ADD列不带时区的TIMESTAMP生成始终为(TIMESTAMP(“DATETIME”)::DATE)存储;
现在我要说的是错误:
错误:在“”DateTime“”第2行或其附近出现语法错误:...未生成时区始终为(Timestamp(“DateTime”...^SQL状态:42601个字符:121
请帮帮我。
2条答案
按热度按时间qlfbtfca1#
你用
timestamp()
做什么?对于生成的列,应如下所示-
或
小提琴here。
iq3niunx2#
列
dateTime
已经是时间戳,因此您不需要从它创建时间戳。所以只是:(见demo)