как ОТЛИЧИТЬ на одну строку
вот мой код:
SELECT wagon.name w_name, '' as su_name, '' as m_name, '' as sk_name, '' as p_name, '' as b_name, '' as o_name, total w_total, 0 as su_total, 0 as m_total, 0 as sk_total, 0 as p_total, 0 as b_total, 0 as o_total FROM wagoning LEFT JOIN wagon ON wagoning.wagon_id = wagon.id UNION ALL SELECT '' w_name, name su_name, '' m_name, '' sk_name, '' p_name, '' b_name, '' o_name, 0 w_total, total su_total, 0 m_total, 0 sk_total, 0 p_total, 0 b_total, 0 o_total FROM drying LEFT JOIN drier ON drying.drier_id = drier.id UNION ALL SELECT '' w_name, '' su_name, quantity::varchar as m_name, '' sk_name, '' p_name, '' b_name, '' o_name, 0 w_total, 0 su_total, total m_total, 0 sk_total, 0 p_total, 0 b_total, 0 o_total FROM bagging UNION ALL SELECT '' w_name, '' su_name, '' m_name, quantity::varchar as sk_name, '' p_name, '' b_name, '' o_name, 0 w_total, 0 su_total, 0 m_total, total sk_total, 0 p_total, 0 b_total, 0 o_total FROM storing UNION ALL SELECT '' w_name, '' su_name, '' m_name, '' sk_name, quantity::varchar as p_name, '' b_name, '' o_name, 0 w_total, 0 su_total, 0 m_total, 0 sk_total, total p_total, 0 b_total, 0 o_total FROM processing UNION ALL SELECT '' w_name, '' su_name, '' m_name, '' sk_name, '' p_name, quantity::varchar as b_name, '' o_name, 0 w_total, 0 su_total, 0 m_total, 0 sk_total, 0 p_total, quantity * net b_total, 0 o_total FROM boxing UNION ALL SELECT '' w_name, '' su_name, '' m_name, '' sk_name, '' p_name, '' b_name, '' o_name, 0 w_total, 0 su_total, 0 m_total, 0 sk_total, 0 p_total, 0 b_total, part o_total FROM boxing
Пожалуйста, проверьте снимок экрана ниже: верхний результат (над красным), как это работает сейчас. То, что я хочу, находится под красной линией, как в одной строке
Пожалуйста, прикрепите вашу схему БД
StackOverflow благодарит вас за ваш вклад.


Я полагаю, вы хотите, чтобы MAX по результатам запроса всех UNION ALL
select MAX(w_name) as w_name,
MAX(su_name)as su_name,
-- .. other columns
FROM
(
SELECT
wagon.name w_name,
'' as su_name,
'' as m_name,
'' as sk_name,
'' as p_name,
'' as b_name,
'' as o_name,
total w_total,
0 as su_total,
0 as m_total,
0 as sk_total,
0 as p_total,
0 as b_total,
0 as o_total
FROM wagoning
LEFT JOIN wagon ON wagoning.wagon_id = wagon.id
UNION ALL
SELECT
..
Невозможно использовать макс. Ретранслятор должен быть в Ирпорте
@MaratRaimberdievich: Но я не вижу, чтобы в вашем запросе всегда был только один ненулевой столбец на запрос
Я пробовал, но репитер не работал. он всегда показывает только одну строку. Мне нужно повторить эти таблицы как одну строку и повторить для других записей. Ну, клиент хочет эти дерьмовые отчеты :(
Что ж, jasper iReport выполняет повторяющуюся часть. Я просто привожу строку, которая будет повторяться для других записей.
Пожалуйста, не добавляйте изображения. Пожалуйста, добавьте свой результат и ожидаемый результат к вопросу в виде текста.