GROUP BY все столбцы, кроме двух полей даты и манипулировать полями даты в запросе - PullRequest
0 голосов
/ 03 февраля 2020

У меня есть запрос, который возвращает несколько столбцов, включая два поля даты: START_DATE и END_DATE. Мне нужно изменить запрос так, чтобы, если все поля, кроме дат, были равны, строки объединялись и START_DATE заменялось на дату MIN всех объединенных строк, а END_DATE заменялось датой MAX всех объединенных строк?

Можно ли это сделать с операторами и подзапросами CASE?

SELECT 
    RA, 
    RA,
    START_DATE,
    END_DATE,
    RA, 
    GT,
    RG, 
    SR,   
    SR, 
    SR, 
FROM  RG,  RA,  SR,  GT
WHERE SR = RG
AND GT = RG
AND RA = 'asdH'
AND RA NOT IN ('G', 'W')
AND RA. = RG.
AND SR. = GT.;

Ответы [ 2 ]

0 голосов
/ 03 февраля 2020
SELECT field1,field2,field3,field4,field5,field6,field7,field8,
min(START_DATE) as START_DATE ,max(END_DATE) as END_DATE
FROM (
SELECT field1,field2,field3,field4,field5,field6,field7,field8,START_DATE,END_DATE FROM RG
UNION
SELECT field1,field2,field3,field4,field5,field6,field7,field8,START_DATE,END_DATE from RA
UNION
SELECT field1,field2,field3,field4,field5,field6,field7,field8,START_DATE,END_DATE FROM SR
UNION
SELECT field1,field2,field3,field4,field5,field6,field7,field8,START_DATE,END_DATE
FROM GT) t
GROUP BY field1,field2,field3,field4,field5,field6,field7,field8;
0 голосов
/ 03 февраля 2020

Это ответ на ваш вопрос, у меня не так много деталей, поэтому многое остается для воображения:

SELECT 
    RA.field1, 
    RA.field2,
    min(START_DATE) as START_DATE,
    max(END_DATE) as END_DATE,
    RA.field3, 
    GT.field4,
    RG.field5, 
    SR.field6,   
    SR.field7, 
    SR.field8, 
FROM  RG,  RA,  SR,  GT
WHERE SR = RG
AND GT = RG
AND RA = 'asdH'
AND RA NOT IN ('G', 'W')
AND RA. = RG.
AND SR. = GT.
group by 
    RA.field1, 
    RA.field2, 
    RA.field3, 
    GT.field4,
    RG.field5, 
    SR.field6,   
    SR.field7, 
    SR.field8
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...