powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / отнять результаты запроса
6 сообщений из 6, страница 1 из 1
отнять результаты запроса
    #38617005
lita13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть два запроса
Код: sql
1.
2.
3.
4.
5.
select AVG(rat) from (select AVG(stars) as rat,год, название
from табл1, табл2
Where табл1.mId=табл2.mId and год>'2000'
group by название
order by rat desc,название) as ee;


и второй
Код: sql
1.
2.
3.
4.
5.
6.
7.
select AVG(rat)
from
  (select AVG(stars) as rat,год, название 
   from табл1, табл2
   Where табл1.mId=табл2.mId and год>'2000'
   group by название
   order by rat desc,название) as ee;


раньше и позже 2000 года, один возвращает число, и второй, как получить их разность, подскажите пжл
...
Рейтинг: 0 / 0
отнять результаты запроса
    #38617110
lita13,

ну так-то запросы у тебя - один в один... :)
варианта решения может быть несколько:
1) Выбрать все данные одним запросом, разделение на "до 2000 года" и "после 200 года" сделать при помощи CASE в селект листе. Дальше банально взять разницу между двумя полями
2) Вернуть один из наборов данных со знаком "минус", объединить результаты обоих запросов посредством UNION ALL и посчитать агрегатный SUM над полученным множеством.
3) Каждый из запросов сделать в виде скаляра в селек-списке обобщенного запроса и найти их разность...
...
Рейтинг: 0 / 0
отнять результаты запроса
    #38617310
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lita13есть два запроса
Код: sql
1.
2.
3.
4.
5.
select AVG(rat) from (select AVG(stars) as rat,год, название
from табл1, табл2
Where табл1.mId=табл2.mId and год>'2000'
group by название
order by rat desc,название) as ee;


и второй
Код: sql
1.
2.
3.
4.
5.
6.
7.
select AVG(rat)
from
  (select AVG(stars) as rat,год, название 
   from табл1, табл2
   Where табл1.mId=табл2.mId and год>'2000'
   group by название
   order by rat desc,название) as ee;


раньше и позже 2000 года, один возвращает число, и второй, как получить их разность, подскажите пжл

что за ересь!?
1)групировка по названию, но не по году
2)зачем сортировать по названию, если в итоге нам названия не нужны
3)и зачем двойное усреднение?? это что мы в итоге получим?

предположим что данные, сколько новых звёзд(з) открыла в каждом году каждая обсерватория(о)

о1 - 1- среднее 1
о2 - 1- среднее 1
о3 - 1- среднее 1
о4 - 1- среднее 1
о5 - 1,1,1,1,1.... всего 50 штук, 1- среднее 1

общее среднее будет 1 - и??? о чом оно говорит.хотя может я чегото не понимаю
...
Рейтинг: 0 / 0
отнять результаты запроса
    #38618056
Cygapb-007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex564657498765453 ,

уже предложено целых ТРИ варианта решения
...
Рейтинг: 0 / 0
отнять результаты запроса
    #38618150
lita13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex564657498765453,
не я ж задания придумываю)
...
Рейтинг: 0 / 0
отнять результаты запроса
    #38618217
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lita13alex564657498765453,
не я ж задания придумываю)лично у меня сложилось впечатление, что вы нам показали не задание , а свою попытку решения
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / отнять результаты запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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