Я таблица с именем как должностиMysql выбрать уникальное поле из сгруппированной таблицы
|id|user_id|title|description|
любит таблицу как этот
|id|user_id|post_id|
здесь мой SQL код
select count(likes.id) as like_count, posts.* from `posts` left join
`likes` on `likes`.`post_id` = `posts`.`id` where `posts`.`status` = 'A'
group by `posts`.`id` order by `like_count` desc LIMIT 6
Вот
|like_count | id | user_id | title | description |
---------------------------------------------------
17 | 723 | 12 | ... | .... |
15 | 721 | 15 | ... | .... |
14 | 711 | 12 | ... | .... |
13 | 700 | 12 | ... | .... |
12 | 800 | 11 | ... | .... |
12 | 920 | 12 | ... | .... |
как вы видите user_id 12 повторяет время, я хочу только одно сообщение от одного пользователя.
Есть ли способ выбрать наиболее понравившуюся должность каждого пользователя и сделать user_id не повторением.
Я не downvote вас, но ваша схема требует дальнейшего объяснения. Таблица 'posts' связывает пользователей с сообщениями, а затем' любит' делает то же самое. Каково было ваше намерение при составлении таблиц? –
@TimBiegeleisen user_id в сообщениях, вероятно, является пользователем, который его создал, а user_id on likes table - это пользователь, которому это понравилось. Я не думаю, что в этом есть что-то странное. –
@DavidAllen Не стесняйтесь дать ответ, но будьте готовы к повторению нескольких раз (или больше). –