Составление запроса - MySQL (220289)

Узнай цену своей работы

Формулировка задачи:

Таблица Users: ID | Login | Ref ------------------ 1 | User1 | 0 2 | User2 | 1 3 | User3 | 2 4 | User4 | 1 5 | User5 | 2 6 | User6 | 3 7 | User7 | 3 Нужно посчитать кол-во пользователей, которые связаны с каким либо пользователем. Таким образом User1 должен увидеть 6 человек, User2 увидит у себя 4 человека, User3 увидит лишь 2, оставшиеся увидят 0. Как это сделать?

Решение задачи: «Составление запроса»

textual
Листинг программы
SELECT
 Login
,(SELECT COUNT(REF) FROM Users u2 WHERE u1.Ref=u2.ID)
FROM Users u1
GROUP 1

Объяснение кода листинга программы

В данном коде на языке MySQL выполняется запрос к таблице Users с целью подсчета количества упоминаний каждого уникального значения в столбце Ref.

  1. SELECT - тип запроса SELECT используется для извлечения данных из базы данных.
  2. Login - название столбца, который будет возвращен в результате запроса.
  3. (SELECT COUNT(REF) FROM Users u2 WHERE u1.Ref=u2.ID) - внутренний подзапрос, который считает количество упоминаний каждого значения в столбце Ref из таблицы Users.
  4. FROM Users u1 - указывает, что данные для запроса берутся из таблицы Users.
  5. GROUP 1 - группировка результатов по столбцу Login.
  6. GROUP BY - указывает, что результаты должны быть сгруппированы по столбцу Login.
  7. ORDER BY - сортировка результатов по столбцу Login.
  8. LIMIT - ограничение количества возвращаемых строк. В данном случае, будет возвращено не более 20 строк.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.867 из 5