У меня есть две таблицы
Table name: place
Columns: placeid, name
Data: 1, My Favourite Donut Place
Table name: category
Columns: categoryid, name, placeid
Data: 1, Donuts, 1
2, Coffee, 1
3, Hot Chocolate, 1
Я присоединяюсь к двум следующим образом:
select p.name as place, c.name as category from place p join category c on p.placeid=c.placeid
И получился бы такой результат:
place category
My favourite donut place Donuts
My favourite donut place Coffee
My favourite donut place Hot Chocolate
Теперь я хочу найти места, где подают кофе:
select p.name as place, c.name as category from place p join category c on p.placeid=c.placeid where c.name = 'Coffee'
Результат, подобный этому:
place category
My favourite donut place Coffee
Но я все еще хочу показать все разные категории для «Моего любимого пончика», где подают кофе, то есть «Пончики» и «Горячий шоколад» тоже.
Каков наилучший способ достичь этого?