0

いくつかのSQLクエリを手伝ってください..

私は3つのテーブルを持っています:

CREATE TABLE cars (
    id integer not null primary key,  -- id of car
    name text not null, -- car name
)

-- 事故

CREATE TABLE accidents (
    id integer not null primary key, -- id of accident
    place text not null, -- place of accident
    a_date date not null -- date of accident
)

-- 事故の結果

CREATE TABLE outcomes (
    car_id integer not null, -- id of car
    accident_id integer not null, -- id of accident
    result smallint not null, -- result: 0 - fine, 1 - scratched, 2 - crashed
    CONSTRAINT outcomes_pkey PRIMARY KEY (car_id, accident_id)
)

一度引っかかれ、再び事故にあった車を取得するには、SQLクエリが必要です。もちろん、クラッシュした車は他の事故にはなり得ません。

4

1 に答える 1

0

これを試して

select c.id, c.name, count(distinct o.results) cnt
from cars c
inner join outcomes o on c.id = o.car_id
where o.results in (1,2)
group by c.id, c.name
having count(distinct o.results) > 1;
于 2013-10-24T13:19:38.287 に答える