19.08.2016, 15:37:31
Войти Зарегистрироваться
Авторизация на сайте

Ваш логин:

Ваш пароль:

Забыли пароль?

Навигация
Новости
Поход в Холодный Яр

Если вы ищете, чем заняться в выходные, любите походы и природу Украины, то вероятно вам понравится поход. Поход в Холодный Яр, если точнее. Холодный

Увлекательный тур пешком по Карпатам

Украина самая большая страна Европы с неплохой инфраструктурой и разнообразием ландшафта. Здесь действительно есть, что посмотреть, от памятников славянской старины до изумительных природных красот.

Мебельные туры в Китай
Вы решили поменять мебель в своей квартире или частном доме? Вы построили гостиницу ее нужно оснастить нового мебелью. Но новая мебель стоит дорого. Мебельный тур в Китай поможет решить вашу проблему

Где покупать термопосуду
Многие из нас любят путешествовать или же просто часто передвигаются. И бывает так, что мы либо не успеваем, либо негде нам покушать теплую домашнюю еду. Но в наше время это все решаемо. Если вы хотите,

Матрасы в Киеве
Если досконально изучить вопросы в интернете, касающихся предстоящей покупки, то делать заказ в интернет-магазине становится приятным, безопасным и простым делом. Не стоит останавливаться, даже если

Успешный трейдинг
Как известно, в нашей современной жизни деньги имеют для всех людей весьма и весьма большое значение. Мы вовсе не хотим сказать, что деньги - это самое главное в жизни, вовсе нет. Есть вещи и понятия,

Оформление пропуска МКАД ТТК СК
Для многих автомобилистов становится настоящей проблемой попасть на Московскую кольцевую автомобильную дорогу. Все мы, конечно, знаем эту дорогу как МКАД. Эта проблема очень ярко выражена в передвижении

Памятники из гранита
Мы живы пока живет память о нас. Это известная истина. Человек делами и поступками оставляет след в памяти других людей после своей смерти. Родные и близкие ушедшего из жизни человека помнят его потому,

Аренда машины с краном-манипулятором
Благодаря высокопроизводительной современной технике, практически все производственные процессы сегодня выполняются быстрее чем прежде и совершенно не в ущерб качеству. Не отстает в развитии и современный

Опытный адвокат в Киеве
Практически все аспекты аспекты нашей жизни регламентируются нормами законов и подзаконными актами. С одной стороны, это может показаться ограничениями, но с другой позволяет мирно сосуществовать всем

Архив новостей
Реклама
Календарь событий
Right Left

MySQL запрос с суммой в WHERE

Опубликовано: 22.08.2018

видео MySQL запрос с суммой в WHERE

SQL для начинающих (DML): группировка GROYP BY (MySql), Урок 9!

Привет.

Сегодня рассмотрим как сделать в MySQL запрос с суммой в WHERE. Зачем это нужно? Допустим, вам нужно выбрать из нескольких страниц с JOIN значения (или даже из одной), сгруппированные по какому-либо идентификатору, при условии, что сумма SUM (или в другом случае count) будет больше определённого значения. Например, выбрать все фото с суммой просмотров больше 10, или выбрать все записи с количеством лайков больше 20. Тут поможет MySQL запрос с суммой в WHERE, так например, работает сервис продвижения сайта http://clancer.ru/ , он использует такие запросы для выбора оптимальных ключевых слов для клиентов.


Как сделать на MySQL запрос с суммой в WHERE?

Для решения этой задачи отлично подойдет команда HAVING в компании с GROUP BY. Приведем пример:

my_table: ID | VALUE | -------------- 1 | 1 | 1 | 1 | 1 | 1 | 2 | -1 | 1 | 5 | 2 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | -------------- SELECT * FROM my_table GROUP BY my_table.id HAVING sum(my_table.value)>10

Это запрос выведет все значения из таблицы my_table, сгруппированные по ID и только те, сумма значений которых больше 10.


Выборка из таблиц. Оператор SELECT в MySQL

Для приведенной таблицы это будет только значение с ID = 1 (у ID=2 сумма меньше 10).

Есть и другой вариант использования MySQL запрос с суммой в WHERE

Предположим, у нас есть 2 таблицы:

table_1: ID | title | ------------------ 1 | 1 | 2 | 2 | 3 | 3 | 4 | 4 | 5 | 5 | 6 | 5 | 7 | 6 | 8 | 7 | 9 | 8 | ------------------ table_2: ID | VALUE | id_table_1 | ----------------------------------- 1 | 1 | 1 | 1 | 1 | 2 | 1 | 1 | 1 | 2 | -1 | 4 | 1 | 5 | 1 | 2 | 1 | 1 | 1 | 1 | 2 | 1 | 1 | 1 | 1 | 1 | 7 | -----------------------------------

Ситуация приблизительно такая же: есть значение (VALUE) в таблице table_2, в которой есть внешний индекс на таблицу table_1. Нужно выбрать все значения (конкретно title) из таблицы table_1, где сумма значений из таблицы table_2 будут больше 5.


Арифметические операторы и операции в MySQL: сложение, вычитание, деление, умножение

Применим наш код MySQL запрос с суммой в WHERE с HAVING:

SELECT table_1.* FROM table_1 LEFT JOIN table_2 ON table_1.id=table_2.id_table_1 GROUP BY table_1.id HAVING sum(table_2.value)>5

Опять в результате будет только table_1.id=1, но это уже из-за заполненных данных.

Думаю, идея ясна, применение MySQL запрос с суммой в WHERE можно найти. Если остались вопросы: пишите в комментарии или в зеленую кнопку «Задать вопрос специалистам».

42

Понравилась или помогла статья?

Купите мне кофе
rss