Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите составить mysql запрос / 15 сообщений из 15, страница 1 из 1
30.07.2018, 13:47
    #39681061
nikolaym12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
Задание:
"Введіть в текстове поле запит, який одночасно зробить вибірку за Прізвищем та підрахує суму покупок за місяць, та середній кошторис за рік."
Начал решать, но не знаю как закончить.
Вот то, что получилось, сейчас:
SELECT SUMM (kost) FROM data WERE `surneme`='Фамилия' AND `month`='August';
Заранее спасибо, всем, кто примет участие.
...
Рейтинг: 0 / 0
30.07.2018, 13:53
    #39681068
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
"Сумму покупок за месяц и средний чек за год."
Встречный вопрос - за какой месяц? (Предположим текущего года)
За все?
Тогда вопрос бы стоял в множественном числе.
...
Рейтинг: 0 / 0
30.07.2018, 13:58
    #39681070
nikolaym12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
982183,
за текущий месяц (1 месяц), год тоже
...
Рейтинг: 0 / 0
30.07.2018, 14:16
    #39681078
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
Тебе нужен if
Примерно так:
в синтаксисе не уверен
Код: sql
1.
2.
3.
4.
5.
SELECT if(month(data)=month(CURDATE(), SUM(kost),0) as SUM_MES,
       if(year(data)=year(CURDATE(), avg(kost),0) as AVG_GOD,
 FROM table WERE `surneme`='Фамилия'
group by surneme
 
...
Рейтинг: 0 / 0
30.07.2018, 14:17
    #39681079
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
кавычки
Код: sql
1.
2.
3.
4.
5.
SELECT if(month(data)=month(CURDATE()), SUM(kost),0) as SUM_MES,
       if(year(data)=year(CURDATE()), avg(kost),0) as AVG_GOD,
 FROM table WERE `surneme`='Фамилия'
group by surneme
 

[/quot]
...
Рейтинг: 0 / 0
30.07.2018, 14:30
    #39681086
nikolaym12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
982183,
Спасибо
...
Рейтинг: 0 / 0
30.07.2018, 15:02
    #39681111
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
Ошибка.
Покажет сумму по текущему месяцу за все года.
Надо еще там же фильтр по текущему году.
...
Рейтинг: 0 / 0
30.07.2018, 15:24
    #39681127
nikolaym12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
982183,
если, я правильно понял из статьи , из справочника то, фильтр будет в формате
CURDATE() - INTERVAL 1 YEAR;
...
Рейтинг: 0 / 0
30.07.2018, 15:26
    #39681130
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
Ты определись
"За последний год" или "за текущий год"
...
Рейтинг: 0 / 0
30.07.2018, 15:29
    #39681132
nikolaym12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
982183,
текущий
...
Рейтинг: 0 / 0
30.07.2018, 15:33
    #39681137
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
Если ты от текущей даты отнимешь один год, то явно выйдешь за пределы текущего года.
...
Рейтинг: 0 / 0
30.07.2018, 15:35
    #39681139
nikolaym12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
982183,
понял, условие тоже, но без минуса
...
Рейтинг: 0 / 0
31.07.2018, 01:27
    #39681349
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
А вот теперь не понял я.
...
Рейтинг: 0 / 0
01.08.2018, 19:42
    #39682217
nikolaym12
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
982183,
Думал что
раз
CURDATE() - INTERVAL 1 YEAR;
делает выборку за прошлый год,
то
CURDATE() INTERVAL 1 YEAR;
сделает выборку за этот год, оказалось убрать минус не решение.
...
Рейтинг: 0 / 0
02.08.2018, 02:20
    #39682295
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите составить mysql запрос
nikolaym12CURDATE() - INTERVAL 1 YEAR;
делает выборку за прошлый год,
За последний год.
Точнее - эта формула возвращает дату, отстоящую от текущей на 1 год.

Прошлый год это 2017 т.е year(CURDATE())-1
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Помогите составить mysql запрос / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]