У меня есть запрос, как это:SELECT DISTINCT один столбец, но вернуть все
$sql_place = "SELECT * FROM place
INNER JOIN join_appointment_place
ON join_appointment_place.id_place = place.id_place
INNER JOIN join_event_appointment
ON join_appointment_place.id_appointment = join_event_appointment.id_appointment
WHERE join_event_appointment.id_event = " . $EVENT_ID . "
ORDER BY place.title, place.category";
Проблема заключается в том, что мне нужно, чтобы вернуть все места с различными titles
. Поэтому я должен использовать DISTINCT
. Но как я могу выбрать DISTINCT
title
и в то же время вернуть все остальные значения?
$sql_place = "SELECT
DISTINCT
place.id_place,
place.avatar,
place.category,
place.title,
place.description,
place.address,
place.latitude,
place.longitude,
place.email,
place.web,
place.shared FROM place
INNER JOIN join_appointment_place
ON join_appointment_place.id_place = place.id_place
INNER JOIN join_event_appointment
ON join_appointment_place.id_appointment = join_event_appointment.id_appointment
WHERE join_event_appointment.id_event = " . $EVENT_ID . "
ORDER BY place.title, place.category";
Выше было то, что я пробовал. Но я беспокоюсь, что применяю DISTINCT не только к title
, но и к каждой выбранной колонке, и это не то, что я ищу. Спасибо за любую помощь :)
показать некоторые примеры данных с ожидаемыми результатами. Вероятно, вам придется сделать некоторую группировку, выбрав min/max других столбцов, если есть не повторяющиеся данные. – Tanner
В таблице 'place' есть места с тем же названием? почему первый запрос не работает ... – Justin
Это действительно помогло бы нам, если бы вы показали некоторые данные образца и желаемый результат. –