gpt4 book ai didi

mysql - 在插入语句的子查询中执行日期和时间计算

转载 作者:行者123 更新时间:2023-11-29 13:44:25 25 4
gpt4 key购买 nike

有人能建议我如何在一个查询中插入当前日期+租赁期吗?代码块中的语法不起作用,但 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;

最佳答案

您的语法似乎是正确的。因此,这可能与您的列的数据类型有关。您尚未提供详细信息,但可以执行以下操作:

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

您可以看到the output in SQL Fiddle

关于mysql - 在插入语句的子查询中执行日期和时间计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17624069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com