テーブルを作成しました
create table routes (
type character varying
, quality character varying
, route integer
, fare integer
);
insert into routes (type, quality, route, fare)
values
('X', 'GOOD', 1, 5)
,('Y', 'GOOD', 1, 7)
,('X', 'AVERAGE', 2, 10)
,('Y', 'GOOD', 2, 7)
,('X', 'BAD', 3, 8)
,('Y', 'BAD', 3, 15);
ルート番号ごとに 2 つのレコードがあり、 と にroute,fare基づいてルートごとに 1 つの行 ( )を選択する必要がtypeありますquality。
たとえば、typeが'X'andqualityが 'GOOD'またはの場合、その行のand'AVERAGE'を選択して次の 'route' に移動します。それ以外の場合は、タイプ「Y」の行から「ルート」と「運賃」を選択します。つまり、上記の表から、次のようになります。routefare
1,5
2,10
3,15
各ルートのレコードをループして、同じルートの 2 つのレコードから出力を導き出すことができませんでした。