所以我想为库创建一个表,如下所示:
项目
ID Name StartDate ReturnDate Fee
-- ---- --------- ---------- ---
5 Book 5-5-2016 7-5-2016 2
-- ---- --------- ---------- ---
所以上面的意思是从5月5日到5月7日借了一本ID为5的书。 每次添加新行时,费用列应自动计算并插入,每天之间每天收取1美元的费用。
你是怎么做到的? 在插入其余数据时,如何使SQL在创建元组时进行此计算(费用应自动更新)?
答案 0 :(得分:0)
假设您的日期列具有日期类型
在Mysql中你可以使用date_diff
SELECT ID, Name, StartDate, ReturnDate, DATEDIFF(ReturnDate,StartDate) AS Fee
from your_table
对于oracle简单地减去日期
SELECT ID, Name, StartDate, ReturnDate,
ReturnDate - StartDate Fee
from your_table
答案 1 :(得分:0)
您最好先创建表格,然后更新费用列
DDL应该是
create table library (id bigint not null, name varchar(100),startDate date, returnDate date, fee int);
更新sql是
update library set fee=DATEDIFF(ReturnDate,StartDate);