Заказ по порядковому номеру в случае - возможность - PullRequest
0 голосов
/ 11 октября 2019

Я получил немного сложный отчет в sql для моего отдела кадров. и одно из полей - если кто-то получил социальное страхование. Для этого необходимо иметь обоснование (если выполнены некоторые предположения, а затем посмотреть Да, в противном случае нет), проблема заключается в том, что люди работают более одного раза и не всегда хотят иметь социальное страхование.

данные выглядят так:

https://fojlww.am.files.1drv.com/y4mawp7Xs7HahMkb_h_bP7xuD_UIHAfDF3dvZ1iPLD5kGMFjHpcJpEDUD3g8TyNmT5mxgZbU6LLJPhWGivDtZEy8i4e3lz32jMBIB7yw5MzRO4U5PiGdoWtbIT02Qdk-9_eGfxTUgkGcE-g4JNQ80C6TK2PSUmlIzBlTmo99knOJotmSnLbqJevrF5CB3jmdKtLVGEfdDY4dLHoCcnWWZV10Q?width=1306&height=320&cropmode=none
(CASE WHEN (select s.emp_no from SSI_DATA s where 
s.C_NO_CONTRIBUTIONS = 'FALSE' and  OBLIG_PENSION_INSUR = 'TRUE' and s.emp_no = cp.emp_no and s.company_id = cp.company_id and 
(s.C_NO_CONTRIB_SINCE <= '2019-10-10' or s.C_NO_CONTRIB_SINCE is null or s.C_NO_CONTRIB_SINCE = 'FALSE' ) and  rownum = 1 
<p>order by s.seq desc</p>
--and s.seq = ( select max(seq) from SSI_DATA where emp_no = cp.emp_no and company_id = cp.company_id)
) = cp.emp_no 

THEN 'Y'

ELSE 'N' END)
...