Chcę utworzyć raport w tym, że chcę uzyskać wartość z trzeciej kolumny, dopasowując dane w 2 różnych kolumnach w tej samej tabeli.

Col1           Col2              Col3

 123        20190220           456789

 456        20180101           789526

 789        20190101           623145

101        20181231           589745

Mam rekordy Col1 i rekordy COL2, potrzebuję zapytania SQL, aby uzyskać C

1
Netfoxf 21 luty 2019, 17:21

2 odpowiedzi

Najlepsza odpowiedź

Jest poniżej tego, czego szukasz -

select * FROM CASES WHERE 
(PATIENT_SER = '168524' and CASE_DATE ='20180101')
or
(PATIENT_SER = '139016' and CASE_DATE ='20180101')
or
(PATIENT_SER = '64685' and CASE_DATE ='20180104')
or
(PATIENT_SER = '168585' and CASE_DATE ='20180104')
or
(PATIENT_SER = '168740' and CASE_DATE ='20180105')
or
(PATIENT_SER = '14507' and CASE_DATE ='20180105');

Oczekiwane wyniki - http://sqlfiddle.com/#! 4/082368/6

0
Vijiy 21 luty 2019, 14:52

Użyj IN za pomocą Ktorek:

SELECT c.*
FROM CASES c
WHERE (c.PATIENT_SER, c.CASE_DATE) IN (('168524', '20180101'),
                                       ('139016', '20180101'),
                                       . . .
                                      )
0
Gordon Linoff 21 luty 2019, 15:18