У меня есть два выбора, которые в настоящее время я успешно выполняю как UNION.
(SELECT a.user_id,a.updatecontents as city,b.country
FROM userprofiletemp AS a
LEFT JOIN userattributes AS b ON a.user_id=b.user_id
WHERE typeofupdate='city')
UNION DISTINCT
(SELECT a.user_id,c.city,c.country
FROM userverify AS a
LEFT JOIN userlogin AS b ON a.user_id=b.user_id
LEFT JOIN userattributes AS c ON a.user_id=c.user_id
WHERE b.active=1 AND a.verifycity=0);
Результаты возвращаются следующим образом:
100 Melbourne Australia
200 NewYork America
300 Tokyo Japan
100 Sydney Australia
Подвох - запрос принесет дубликат user_id (в данном случае 100).Подробности в первом запросе имеют для меня прецедент, и если user_id повторяется во втором запросе, он мне не нужен.
Есть ли способ получить UNION, чтобы быть DISTINCT для столбца?в этом случае user_id?Есть ли способ сделать вышеуказанный вызов и не получить дубликаты user_id - отбросьте второй.Должен ли я переписать запрос по-другому и не использовать UNION.Очень хочу, чтобы это был один запрос - я могу использовать SELECT и PHP, чтобы отсеять дубликаты при необходимости.
thx Adam