# Тихие наблюдатели категории

**URL:** https://meta.discourse.org/t/category-lurkers/275166
**Category:** Data & reporting
**Tags:** sql-query
**Created:** [28.Февраль.2020 13:25:47 UTC](https://meta.discourse.org/t/category-lurkers/275166 "2020-02-28T13:25:47Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![xav](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/xav/32/153918_2.png) [@xav](https://meta.discourse.org/u/xav)
#### Post date: [28.Февраль.2020 13:25:47 UTC](https://meta.discourse.org/t/category-lurkers/275166/1 "2020-02-28T13:25:47Z")

</div>

Скрытные пользователи категорий:

Просмотр уровня уведомлений пользователей для категории (или для всех категорий по умолчанию).  
Обоснование: мы используем категории для «рабочих групп», в которые каждый может «вступить» (подписаться или следить). Таким образом, участник рабочей группы — это пользователь, у которого для этой категории установлен уровень уведомлений, и этот запрос выводит список участников.

```
-- [params]
-- null int :category 

select category_id, cu.user_id,
CASE notification_level 
  WHEN 1 THEN 'regular'
  WHEN 2 THEN 'tracking'
  WHEN 3 THEN 'watching'
  WHEN 4 THEN 'watching_first_post'
END as level

from category_users cu
join categories on category_id=categories.id
where (:category is null OR category_id= :category)
order by category_id, notification_level desc

```
