У меня был тег, который имел исключительно административное значение. Раньше я показывал его всем пользователям, но по сути это был просто шум для них, и кроме меня его никто не использовал.
Поэтому я добавил его в группу тегов, видимую только администраторам. Но он всё равно оставался видимым для всех. Сначала я был в восторге, потому что нашёл баг… но нет. Единственным багом, как выяснилось, снова был я.
Я также добавил этот тег ещё в три другие группы, которые были видны всем пользователям. Тег стал скрыт для обычных пользователей только после того, как я убрал его из этих групп, но поиск этих «пересекающихся» групп тегов требовал слишком много ручной работы
Так вот, есть ли простой способ узнать, в какие группы добавлен тот или иной тег?
Конечно, через SQL, но я не владею этим языком. И когда я обращался за советом к чат-боту, я, вероятно, не был достаточно конкретен.
О, ради бога, разрешены ли здесь матерные слова — насколько же мужчина может быть невнимательным Я должен был это знать, но когда я был на странице тега, мне даже в голову не приходило думать в таком направлении. Хороший пример ограниченности мышления.
Ну, на сегодня достаточно самобичевания
Но… ты умеешь работать с SQL, и я уверен, что ты умеешь общаться с ИИ лучше меня. Есть ли у нас возможность задать этот вопрос базе данных? И это чистое любопытство, а не необходимость.
Запрос, который выводит теги и содержит столбец со всеми связанными с ними группами тегов?
Это должно быть возможно с помощью чего-то подобного:
SELECT
t.name AS "Тег",
STRING_AGG(tg.name, ', ' ORDER BY tg.name) AS "Группы тегов"
FROM tags t
JOIN tag_group_memberships tgm ON tgm.tag_id = t.id
JOIN tag_groups tg ON tg.id = tgm.tag_group_id
GROUP BY t.name