Как правильно сделать такой запрос - MySQL
Формулировка задачи:
Нужно из users выбрать id и login, а из operations сосчитать общую сумму kol где login равен login из users
Решение задачи: «Как правильно сделать такой запрос»
textual
Листинг программы
SELECT u.id, u.login, (SELECT SUM(o.kol) FROM operations o WHERE o.login = u.login) AS kol FROM users u
Объяснение кода листинга программы
В данном коде на языке SQL выполняется запрос к базе данных, который направлен на выборку определенных данных из таблицы users.
- SELECT - указывает, что нужно выбрать определенные данные из базы данных.
- u.id, u.login - указывают, какие конкретно поля нужно выбрать из таблицы
users. - (SELECT SUM(o.kol) FROM operations o WHERE o.login = u.login) AS kol - это вложенный запрос, который суммирует значения поля
kolиз таблицыoperations, где значение поляloginсовпадает с значением поляloginиз таблицыusers. Результат этого запроса присваивается псевдонимуkol. - FROM users u - указывает, из какой таблицы нужно выбрать данные.
Таким образом, данный запрос выбирает идентификатор пользователя и его логин из таблицы
users, а также суммарное количество операций (kol) для каждого пользователя из таблицыoperations, где логин совпадает с логином из таблицыusers.