我正在尝试将我的查询结果添加到现有表的列中。 到目前为止,下面的查询会计算出并显示该值。但是,我想将此值添加到car_price列中的CAR_PAYMENT_TBL
。使用查询结果的更新表
下面的create table命令显示了相关的表格以及它们之间的关系。是否有可能更新CAR_PAYMENT_TBL
中的值?
SELECT C.TICKET_NO,
C.REG_ID,
C.BOOKING_ID,
(R.END_DATE-R.START_DATE) AS DAYS_STAYED,
(R.END_DATE-R.START_DATE)*5 AS CAR_PRICE
FROM CAR_TBL C
LEFT JOIN
ROOM_TBL R
ON C.BOOKING_ID = R.BOOKING_ID;
表模式:
CREATE TABLE CAR_PAYMENT_TBL
(
TICKET_NO INT NOT NULL PRIMARY KEY,
CAR_PRICE NUMERIC(5,2)
);
CREATE TABLE CAR_TBL
(
REG_ID VARCHAR2(7) NOT NULL PRIMARY KEY,
TICKET_NO INT NOT NULL references CAR_PAYMENT_TBL(TICKET_NO),
BOOKING_ID INT NOT NULL references BOOKING_TBL(BOOKING_ID)
);
CREATE TABLE ROOM_TBL
(
STAY_NO INT NOT NULL PRIMARY KEY,
ROOM_NO VARCHAR2(4) NOT NULL references ROOM_DETAILS_TBL(ROOM_NO),
START_DATE DATE NOT NULL,
END_DATE DATE NOT NULL,
BOOKING_ID INT NOT NULL references BOOKING_TBL(BOOKING_ID)
);
请考虑使用该值的
CAR_PAYMENT_TBL
所有记录加入写你的更新(像这样的子查询必须只返回一行,因为你使用&ticket_no这应该是好的,我只是说)。接下来,您需要编写'SET CAR_PRICE =(SELECT [your earlier statement]);' – Najzero 2013-03-21 11:52:54room_tbl和car_payment_tbl如何关联? – 2013-03-21 11:56:51
您缺少一些连接... – haki 2013-03-21 13:06:33