如何使用日期,所以我可以使用天數將該數字添加到另一個日期
例如,我需要為 Loan_period 到 Loan_Date 中包含的每個數字增加 1 天,結果應該在 Return_Date 中
CREATE TABLE Book
(
Resource_ID INT PRIMARY KEY,
Title VARCHAR2(40) NOT NULL,
Loan_Period int (40) NOT NULL,
noTimesLoaned int NOT NULL
);
CREATE TABLE Loan
(
Loan_No INT PRIMARY KEY,
Loan_Date DATE NOT NULL,
Return_Date DATE,
Resource_ID INT NOT NULL,
);
謝謝
uj5u.com熱心網友回復:
示例資料肯定會有所幫助,但是 - 在日期算術中,在 Oracle 中,一個簡單的date datatype value number結果是添加到該日期的天數。例如:
SQL> select sysdate right_now,
2 sysdate 2 as today_plus_2_days
3 from dual;
RIGHT_NOW TODAY_PLUS_2_DAYS
------------------- -------------------
15.12.2021 14:02:09 17.12.2021 14:02:09
SQL>
uj5u.com熱心網友回復:
如果你有這些表:
CREATE TABLE Book
(
Resource_ID INT
GENERATED ALWAYS AS IDENTITY
CONSTRAINT book__rid__pk PRIMARY KEY,
Title VARCHAR2(40) NOT NULL,
Loan_Period int NOT NULL,
noTimesLoaned int NOT NULL
);
CREATE TABLE Loan (
Loan_No INT
GENERATED ALWAYS AS IDENTITY
CONSTRAINT load__ln__pk PRIMARY KEY,
Loan_Date DATE NOT NULL,
Return_Date DATE,
Resource_ID CONSTRAINT loan__rid__fk REFERENCES book
NOT NULL
);
然后你可以創建一本書:
INSERT INTO book(title, loan_period, notimesloaned)
VALUES ('ABC', 14, 0);
然后您可以使用INSERT INTO Loan (...) SELECT ... FROM book ...將正確的書籍詳細資訊傳輸到loan表中:
INSERT INTO loan (loan_date, return_date, resource_id)
SELECT TRUNC(SYSDATE),
TRUNC(SYSDATE) loan_period,
resource_id
FROM book
WHERE resource_id = 1
然后:
SELECT * FROM loan;
輸出:
LOAN_NO LOAN_DATE 歸期 資源 ID 1 2021-12-15 00:00:00 2021-12-29 00:00:00 1
注意:表中不應有一noTimesLoaned列Book;如果您想獲取該資訊,則應使用表(可能在視圖中)COUNT(*)上的查詢生成該資訊Loan。
db<>在這里擺弄
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/388844.html
下一篇:使用d3旋轉SVG影像元素
