· 7 years ago · Nov 20, 2018, 12:56 AM
1drop table if exists seatnum cascade;
2drop table if exists seatrow cascade;
3drop table if exists seat cascade;
4
5create table seatnum (
6 num int primary key
7 );
8
9create table seatrow (
10 row varchar(2) primary key
11 );
12
13create table seat (
14 num int references seatnum(num),
15 row char(1) references seatrow(row),
16 side text not null,
17 constraint seat_pk primary key (num, row)
18 );
19
20insert into seatnum(num)
21select generate_series(1,15);
22
23insert into seatnum(num)
24select generate_series(101,126);
25
26insert into seatrow(row) values
27('A'), ('B'), ('C'), ('D'), ('E'), ('F'), ('G'), ('H'), ('J'), ('K'), ('L'), ('M'), ('O'), ('P'), ('Q'), ('R');
28insert into seatrow(row) values
29('AA'),
30('BB'),
31('CC'),
32('DD'),
33('EE'),
34('FF'),
35('GG'),
36('HH');
37
38insert into seat(row, num, side)
39select seatrow.row, seatnum.num, 'Center'
40from seatrow, seatnum
41where seatnum.num >= 1
42and seatnum.num <= 10
43and seatrow.row in ('A', 'B', 'C')
44;
45
46select * from seat;