powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Можно упростить запрос?
3 сообщений из 3, страница 1 из 1
Можно упростить запрос?
    #39960750
LiYing
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
WITH
t3 AS 
(SELECT '2020-04-01' period),

t1 AS
(SELECT period, h_sum_debt, hw_sum_debt
FROM data_sgrc
WHERE (id_contragent=1) AND (period='2020-04-01')),

t2 AS
(SELECT period, h_sum_debt, hw_sum_debt
FROM data_sgrc_nu
WHERE (id_contragent=1) AND (period='2020-04-01'))

SELECT 
	COALESCE(t1.h_sum_debt + t2.h_sum_debt, t1.h_sum_debt, t2.h_sum_debt, 0) hsd,
	COALESCE(t1.hw_sum_debt + t2.hw_sum_debt, t1.hw_sum_debt, t2.hw_sum_debt, 0) hwsd
FROM t3
LEFT JOIN t1 ON t1.period=t3.period 
LEFT JOIN t2 ON t2.period=t3.period



Суть запроса: выбрать данные по контрагенту из 2х не связанных между собой, но имеющих идентичную структуру, таблиц. Данные могут быть только в 1й, только во 2й или в обеих сразу.
...
Рейтинг: 0 / 0
Можно упростить запрос?
    #39960764
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
WITH cte AS ( 
SELECT period, h_sum_debt, hw_sum_debt
FROM data_sgrc
WHERE (id_contragent=1) AND (условие по period)
UNION ALL
SELECT period, h_sum_debt, hw_sum_debt
FROM data_sgrc_nu
WHERE (id_contragent=1) AND (условие по period)
)
SELECT period, SUM(h_sum_debt) hsd, SUM(hw_sum_debt) hwsd
FROM cte
GROUP BY period


Для period='2020-04-01' (константы) GROUP BY можно удалить за ненадобностью.
...
Рейтинг: 0 / 0
Можно упростить запрос?
    #39960774
LiYing
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

Спасибо, работает!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Можно упростить запрос?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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