Проблема с выборкой только уникальныйх полей и функцией CONCAT

108
09 апреля 2021, 18:10

У меня стоит задача: выбрать из таблицы с актерами всех актеров, которые не имеют однофамильцев. Я делаю это следующим запросом:

SELECT Actors.surname FROM `Actors` GROUP BY Actors.surname HAVING COUNT(Actors.surname) = 1 order by Actors.surname

Соответственно я успешно получаю результат без дубликатов:

Но! Мне нужно использовать функцию CONCAT что бы получить имя актера полностью, вместе с фамилией и опять же избежать всех однофамильцев. И вот это сделать у меня не выходит никак. Можете подсказать мне с этим? Спасибо

Answer 1

Мне нужно использовать функцию CONCAT что бы получить имя актера полностью, вместе с фамилией и опять же избежать всех однофамильцев.

SELECT MAX(CONCAT(firsname, ' ', surname)) fullname
FROM actors
GROUP BY surname
HAVING COUNT(surname) = 1
-- ORDER BY surname

Если only_full_group_by отключен, обёртку MAX() можно убрать.

Answer 2

Например, так:

        SELECT * FROM `Actors` where Actors.surname in (
        SELECT Actors.surname FROM `Actors` GROUP BY Actors.surname 
        HAVING COUNT(Actors.surname) = 1 
        )
         order by Actors.surname
READ ALSO
JQuery AJAX не срабатывает success, в чем проблема?

JQuery AJAX не срабатывает success, в чем проблема?

При клике отправляется объект на сервер, статус==200, но 'success' не срабатываетПодскажите, в чём проблема

140
Как добавить в массив наследуемого класса

Как добавить в массив наследуемого класса

Дано задание "Даны два классаКласс В является наследником класса А

115
Вывод поля с бд

Вывод поля с бд

Когда пользователь регистрируется на сайте и после регистрации ему показывает сообщение $info_reg = 'Вы успешно зарегистрировались! Ваша реферальная...

110
Расшифровка коротких ссылок

Расшифровка коротких ссылок

заинтересовал скрипт по расшифровке коротких ссылок Есть ссылка, например: http://langameppcom/chtst/DAFB5E48618B4D60DB8B69822BB7DB74EBC36A7F50BD3141E9A3B93CFB0B0AF50A41771313FE250CA8D6 И она...

111