Data Explorer Query - добавить дополнительный параметр в экспорт

Я хочу, чтобы мой список «Пользователи, ответившие на тему» включал ИМЯ пользователя.

Я попытался следовать соглашению из другой темы, которое позволяет включать дополнительную информацию в запросы Data Explorer, но при применении того же синтаксиса это не сработало.

Вот запрос, который я выполняю сейчас; он возвращает только «имя пользователя» тех, кто ответил на тему…

-- https://meta.discourse.org/t/68756/8?u=sidv

-- [params]
-- topic_id :topic_id = 536

SELECT u.username
FROM badge_posts p
JOIN topics t ON p.topic_id = t.id 
JOIN users u ON p.user_id  = u.id
WHERE t.id = :topic_id
GROUP BY p.user_id,u.username

Добавьте

 , u.name

после u.username в первой строке.

Спасибо за быструю помощь, Jay! По твоей рекомендации я обновил запрос до следующего:

SELECT u.username, u.name
FROM badge_posts p
JOIN topics t ON p.topic_id = t.id 
JOIN users u ON p.user_id  = u.id
WHERE t.id = :topic_id
GROUP BY p.user_id,u.username

… после чего получил ошибку…

PG::GroupingError: ERROR:  column "u.name" must appear in the GROUP BY clause or be used in an aggregate function
LINE 12: SELECT u.username, u.name

Тогда я изменил запрос на следующий, и всё заработало как по маслу! :tada:

SELECT u.username, u.name
FROM badge_posts p
JOIN topics t ON p.topic_id = t.id 
JOIN users u ON p.user_id  = u.id
WHERE t.id = :topic_id
GROUP BY p.user_id,u.username,u.name

Так что из моего исходного фрагмента я добавил следующее:

В строку “SELECT”:
, u.name

В строку “GROUP BY”:
,u.name

Ещё раз спасибо, @pfaffman, за помощь с этим синтаксисом!

Наконец-то ваш докторантура в области образования окупается!

Отличная работа!

:squinting_face_with_tongue: Да, конечно! Ещё раз спасибо :wink: