У меня есть три таблицы в поиске ресторана в php. Поиск имеет возможность фильтровать его по нескольким типам по состоянию флажка. Некоторые рестораны могут относиться к нескольким типам и иметь несколько записей в таблице type_stack.
Table1 - **restaurant**
------+----------+----------
id + name + place
------+----------+----------
1 rest1 ny
2 rest2 la
3 rest3 ph
4 rest4 mlp
Table2 - **r_type**
------+----------+----------
id + name + code
------+----------+----------
1 type1 0
2 type2 1
3 type3 2
4 type4 3
Table3 - **type_stack**
------+----------+----------
id + rest_id + type
------+----------+----------
1 2 2
2 4 1
3 1 2
Я хочу получить все рестораны, которые подпадают под типы, выбранные пользователем. Но проблема в том, что я получаю один и тот же ресторан несколько раз. Я хочу, чтобы строка отображалась только один раз.
Это мой запрос
SELECT restaurant.name, restaurant.place FROM restaurant, type_stack WHERE restaurant.id = type_stack.rest_id AND type_stack.type = '0' AND type_stack.type = '1' AND type_stack.type = '2' LIMIT 0 , 30
Запрос сделан на основе состояния флажка! В этом случае выбираются типы 0, 1 и 2.