尝试根据 mySQL 中 SELECT 语句的结果更改 table
trying to ALTER a table based on the results from a SELECT statement in mySQL
当我使用以下 select 语句时,我可以 return date_due 和 date_returned 之间的日期差异。
select Date_Due,Date_Returned,
datediff(Date_Due,Date_Returned) as Day_Diff
From tp_rental
但是我无法获取这些值来替换 tp_rental table 中的当前空值。我尝试了以下语句,还认为它会创建一个新列。
alter table tp_rental
ADD DayDiff as DATEDIFF (Date_Due,Date_Returned);
我的错误是 DATEDIFF 附近的语法有问题
有什么想法吗?提前致谢
生成的列表达式需要包含在()
中(参见manual)。您还需要添加列类型定义:
alter table tp_rental
ADD DayDiff INT as (DATEDIFF(Date_Due,Date_Returned));
当我使用以下 select 语句时,我可以 return date_due 和 date_returned 之间的日期差异。
select Date_Due,Date_Returned,
datediff(Date_Due,Date_Returned) as Day_Diff
From tp_rental
但是我无法获取这些值来替换 tp_rental table 中的当前空值。我尝试了以下语句,还认为它会创建一个新列。
alter table tp_rental
ADD DayDiff as DATEDIFF (Date_Due,Date_Returned);
我的错误是 DATEDIFF 附近的语法有问题
有什么想法吗?提前致谢
生成的列表达式需要包含在()
中(参见manual)。您还需要添加列类型定义:
alter table tp_rental
ADD DayDiff INT as (DATEDIFF(Date_Due,Date_Returned));