1.i有两个表座位编号,其中预定义数据可根据类名提供 2.在预订表中,我想分配这个号码进行特殊预订。如果一个预订ID为3名乘客生成,那么在此表中说1,2,3号码应分配
CREATE TABLE SEATNUMBER
( "SEAT_NO" NUMBER,
"CLASS_NAME" VARCHAR2,
"ACTIVE" NUMBER DEFAULT 1 NOT NULL ENABLE,
)
CREATE TABLE BOOKING
( booking_id number,
seatnumber number
)
seatnumber表中的活动列用于显示座位是否已分配给某个预订ID或不是 1是不分配 2用于分配
答案 0 :(得分:0)
要查找未使用的座位号,您可以执行以下操作:
SELECT s.SEAT_NO as UNUSED_SEAT_NO
FROM SEATNUMBER s
LEFT OUTER JOIN BOOKING b
ON (b.SEATNUMBER = s.SEAT_NO)
WHERE b.BOOKING_ID IS NULL AND
s.ACTIVE = 1;
我不理解您对ACTIVE列的评论。在这里,我将您的注释解释为意味着值为1表示座位可以分配,而2表示已经分配。如果我错了,只需将查询更改为使用s.ACTIVE = 2
。
分享并享受。