-- 1/3 : Création de la table temporaire
DROP TABLE IF EXISTS w_dbsetup
;

CREATE TEMP TABLE w_dbsetup AS
    SELECT code, texte FROM pmsi.t_mco ORDER BY code LIMIT 0
;

-- 2/3 : Peuplement de la table temporaire
INSERT INTO w_dbsetup(
    code,
    texte
)
VALUES
('', 'Non saisi'),
('*', 'ePMSI hors GHM'),
('?', 'Non attribué'),
('C', 'Chirurgie'),
('M', 'Médecine'),
('O', 'Obstétrique')
;

-- 3/3 : Màj de la table iCTI
UPDATE pmsi.t_mco SET 
	texte = w_dbsetup.texte
FROM w_dbsetup
WHERE t_mco.code = w_dbsetup.code
AND (
	t_mco.texte <> w_dbsetup.texte OR
	t_mco.texte IS NULL
);


INSERT INTO pmsi.t_mco(code, texte)
SELECT 
	code, texte 
FROM w_dbsetup 
WHERE code NOT IN (SELECT code FROM pmsi.t_mco);