Задать вопрос
@maks78945

По какой причине результат не корректно сортируется?

Добрый день, есть вот такой запрос, которые получает названия всех компаний из разных таблиц, объединяет их и сортирует, но по непонятно мне причине, сортировка не верна. Подскажите что не так делаю

SELECT
     t.company, SUM(t.dogovor_count_object) AS dogovor_count_object, SUM(t.dogovor_price) AS dogovor_price
FROM (
       SELECT
            company, SUM(dogovor_count_object) AS dogovor_count_object, ROUND(SUM(dogovor_price), 2) AS dogovor_price
       FROM
            tab1
       GROUP BY company
UNION
        SELECT
             company, SUM(dogovor_count_object) AS dogovor_count_object, ROUND(SUM(dogovor_price), 2) AS dogovor_price
        FROM
              tab2
        GROUP BY company
                ......
            ) AS t
GROUP BY t.company
ORDER BY t.dogovor_price DESC
  • Вопрос задан
  • 47 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@maks78945 Автор вопроса
Bavashi, Получилось решить проблему вот так:
SELECT * FROM
(SELECT
     t.company, SUM(t.dogovor_count_object) AS dogovor_count_object, SUM(t.dogovor_price) AS dogovor_price
FROM (
       SELECT
            company, SUM(dogovor_count_object) AS dogovor_count_object, ROUND(SUM(dogovor_price), 2) AS dogovor_price
       FROM
            tab1
       GROUP BY company
UNION
        SELECT
             company, SUM(dogovor_count_object) AS dogovor_count_object, ROUND(SUM(dogovor_price), 2) AS dogovor_price
        FROM
              tab2
        GROUP BY company
                ......
            ) AS t
GROUP BY t.company) AS t1
ORDER BY t1.dogovor_price DESC
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
А как вы себе представляете сортировку сгруппированных данных по неагрегированному полю?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы