|
| 1 | +-- ============================================================================= |
| 2 | +-- META-ELEMENT: {"type": "drop_table"} |
| 3 | +-- Note: uncomment only if dropping to apply new structural update(s) |
| 4 | +-- ============================================================================= |
| 5 | +-- DROP TABLE IF EXISTS ssd_disability; |
| 6 | + |
| 7 | +-- ============================================================================= |
| 8 | +-- META-ELEMENT: {"type": "create_table"} |
| 9 | +-- ============================================================================= |
| 10 | + |
| 11 | +CREATE TABLE IF NOT EXISTS ssd_disability |
| 12 | +( |
| 13 | + disa_table_id VARCHAR(48) PRIMARY KEY, -- metadata={"item_ref":"DISA003A"} |
| 14 | + disa_person_id VARCHAR(48) NOT NULL, -- metadata={"item_ref":"DISA001A"} |
| 15 | + disa_disability_code VARCHAR(48) NOT NULL -- metadata={"item_ref":"DISA002A"} |
| 16 | +); |
| 17 | + |
| 18 | +-- ============================================================================= |
| 19 | +-- Truncate before reload |
| 20 | +-- ============================================================================= |
| 21 | +TRUNCATE TABLE ssd_disability; |
| 22 | + |
| 23 | +-- ============================================================================= |
| 24 | +-- Load data into ssd_disability |
| 25 | +-- ============================================================================= |
| 26 | + |
| 27 | +INSERT INTO ssd_disability ( |
| 28 | + disa_table_id, |
| 29 | + disa_person_id, |
| 30 | + disa_disability_code |
| 31 | +) |
| 32 | +;WITH EXCLUSIONS AS ( |
| 33 | + SELECT |
| 34 | + PV.PERSONID |
| 35 | + FROM [eclipseDelta].[dbo].[PERSONVIEW] PV |
| 36 | + WHERE PV.PERSONID IN (1,2,3,4,5,6) -- hard filter admin/test/duplicate records |
| 37 | + OR COALESCE(PV.DUPLICATED,'?') = 'DUPLICATE' |
| 38 | + OR UPPER(PV.FORENAME) LIKE '%DUPLICATE%' |
| 39 | + OR UPPER(PV.SURNAME) LIKE '%DUPLICATE%' |
| 40 | +) |
| 41 | +SELECT |
| 42 | + CLA.CLASSIFICATIONASSIGNMENTID AS disa_table_id, -- metadata={"item_ref":"DISA003A"} |
| 43 | + CLA.PERSONID AS disa_person_id, -- metadata={"item_ref":"DISA001A"} |
| 44 | + CASE |
| 45 | + WHEN CLASSIFICATION.NAME = 'No disability' THEN 'NONE' |
| 46 | + WHEN CLASSIFICATION.NAME = 'Mobility' THEN 'MOB' |
| 47 | + WHEN CLASSIFICATION.NAME = 'Hand function' THEN 'HAND' |
| 48 | + WHEN CLASSIFICATION.NAME = 'Personal care' THEN 'PC' |
| 49 | + WHEN CLASSIFICATION.NAME = 'Incontinence' THEN 'INC' |
| 50 | + WHEN CLASSIFICATION.NAME = 'Communication' THEN 'COMM' |
| 51 | + WHEN CLASSIFICATION.NAME = 'Learning Disability' |
| 52 | + OR CLA.NAME = 'Learning' THEN 'LD' |
| 53 | + WHEN CLASSIFICATION.NAME = 'Hearing' THEN 'HEAR' |
| 54 | + WHEN CLASSIFICATION.NAME = 'Vision' THEN 'VIS' |
| 55 | + WHEN CLASSIFICATION.NAME = 'Behaviour' THEN 'BEH' |
| 56 | + WHEN CLASSIFICATION.NAME = 'Consciousness' THEN 'CON' |
| 57 | + WHEN CLASSIFICATION.NAME = 'Diagnosed autism/aspergers' |
| 58 | + OR CLASSIFICATION.NAME = 'Autistic Spectrum Disorder' |
| 59 | + OR CLASSIFICATION.NAME = 'Autism spectrum condition' |
| 60 | + THEN 'AUT' |
| 61 | + ELSE 'DDA' |
| 62 | + END AS disa_disability_code -- metadata={"item_ref":"DISA002A"} |
| 63 | +FROM [eclipseDelta].[dbo].[CLASSIFICATIONPERSONVIEW] CLA |
| 64 | +LEFT JOIN CLASSIFICATION |
| 65 | + ON CLASSIFICATION.ID = CLA.CLASSIFICATIONCODEID |
| 66 | +WHERE CLA.STATUS NOT IN ('DELETED') |
| 67 | + AND CLA.CLASSIFICATIONPATHID IN (55, 58, 79, 172, 186) |
| 68 | + AND CLA.PERSONID NOT IN (SELECT PERSONID FROM EXCLUSIONS); |
0 commit comments