select DISTINCT first_name, last_name, picture, last_active, id_participante1, id_participante2, id_user, [message], dataHora from chat_b_users inner join utilizadores
on chat_b_users.id_participante2 = utilizadores.id_user
left join chat_talks on chat_b_users.id_chat = chat_talks.id_chat
where id_participante1 = 1
union all
select DISTINCT first_name, last_name, picture, last_active, id_participante1, id_participante2, id_user, [message], dataHora from chat_b_users inner join utilizadores
on chat_b_users.id_participante1 = utilizadores.id_user
left join chat_talks on chat_b_users.id_chat = chat_talks.id_chat
where id_participante2 = 1 order by last_active DESC
Как я могу выбрать отличное значение?SQL Query возвращает один из
Мне нужно вернуть все эти данные даже нулями, но на каждого пользователя, как я могу это сделать?
результаты:
, как вы можете видеть на картинке, я два чатов от того же пользователя, я хочу только один из каждого.
Вы пробовали 'SELECT DISTINCT'? – 2014-09-10 09:43:33
Да, я пробовал, тот же результат – Severiano
Вижу, 'DISTINCT' не работает, потому что комбинация отличается. Ваша метка времени делает их НЕ ОТКАЗЫВАЕТСЯ. Попробуйте 'MAX' с' last_active' и посмотрите, помогает ли это. Взгляните на [этот ответ] (http://stackoverflow.com/questions/5391564/how-to-use-distinct-and-order-by-in-same-select-statement) – 2014-09-10 09:47:51