MyTetra Share
Делитесь знаниями!
14
Время создания: 09.06.2017 10:40
Раздел: SQL Oracle - sql-ex.ru - Абздец задачи
Запись: xintrea/mytetra_db_mcold/master/base/1496994022mes35fokxm/text.html на raw.githubusercontent.com

Задание: 14 (Serge I: 2012-04-20)

Найти производителей, которые выпускают более одной модели, при этом все выпускаемые производителем модели являются продуктами одного типа. Вывести: maker, type


with m_pr as (

select p.maker

from product p

group by p.maker

having count(p.maker) > 1

),

m_count as (

select tt.maker

, count(tt.type)

from (select distinct pp.type

, pp.maker

from product pp) tt

group by tt.maker

having count(tt.type) = 1

),

m_dist as (

select distinct pct.maker,

pct.type

from product pct)

select distinct ppp.maker

, m_dist.type

from product ppp

--, m_pr

, m_count

, m_dist

where ppp.maker in (select m_pr.maker

from m_pr)

and ppp.maker in (select m_count.maker

from m_count)

and ppp.maker = m_dist.maker




-- Найти производителей, которые выпускают более одной модели,

-- при этом все выпускаемые производителем модели являются продуктами одного типа.

-- Вывести: maker, type

 
MyTetra Share v.0.65
Яндекс индекс цитирования