所以我使用了一系列查询来尝试在“match_date”列中为所有日期添加23个小时,并且收到了所有日期的错误变体,包括语法错误和错误,说明stats.dateadd没有存在。
update dates
set match_date=dateadd(hh,23,match_date)
where match_id >='1'
任何想法为什么?
答案 0 :(得分:1)
我猜你正在使用Oracle,并且dateadd
功能不可用。尝试:
update dates
set match_date = match_date + interval '23' hour
where match_id >= 1
或者,在SQL中,向日期添加数字会以天为单位添加该数字。所以你也可以:
update dates
set match_date = match_date + 23.0/24
where match_id >= 1
答案 1 :(得分:0)
您可以尝试使用 interval 选项将日期或时间添加到 SQL 中的日期变量。您也可以尝试 dateadd 方法,但它适用于 mySql,其中此间隔选项适用于所有类型的 SQL 引擎,如 oracle、postgres 等。
update dates set match_date = match_date + INTERVAL '23 hour' where match_id >= 1;