任何人都可以建议我如何在一个查询中插入当前日期+租借期限?代码块中的语法不起作用,但DATE_ADD(NOW(),INTERVAL 1 DAY)有效。我试图让INTERVAL中的整数基于rental_period。我可以通过多个查询执行此操作,但我正在尝试执行此操作(如果可能)。
INSERT INTO rental_details (rental_due_date, vg_id, rental_id) SELECT DATE_ADD(
NOW(), INTERVAL rental_period DAY), vg_id, 1 FROM status INNER JOIN video_games as vg ON
vg.status_id = status.status_id WHERE vg_id = 3;
感谢。
这有效但我需要当前日期+ rental_period(rental_period是一个整数,表示添加到当前日期的天数):
INSERT INTO rental_details (rental_due_date, vg_id, rental_id) select rental_period,
vg_id, 1 from status inner join video_games as vg on vg.status_id = status.status_id
where vg_id = 3;
答案 0 :(得分:1)
您的语法似乎是正确的。因此,它可能与您的列的数据类型有关。您尚未提供详细信息,但以下工作:
create table vg_status
( rental_period integer);
create table rental_details
(due_date date);
insert into vg_status values (3);
insert into vg_status values (300);
insert into rental_details
select date_add(now(), interval rental_period day)
from vg_status
select *
from rental_details