-- 1/3 : Création de la table temporaire
|
|
DROP TABLE IF EXISTS w_dbsetup
|
|
;
|
|
|
|
CREATE TEMP TABLE w_dbsetup AS
|
|
SELECT
|
|
CASE WHEN oid = 0 THEN oid ELSE 1 END AS oid,
|
|
code,
|
|
texte
|
|
FROM pmsi.t_ghm_da
|
|
ORDER BY code
|
|
LIMIT 0
|
|
;
|
|
|
|
-- 2/3 : Peuplement de la table temporaire
|
|
INSERT INTO w_dbsetup(
|
|
oid,
|
|
code,
|
|
texte
|
|
)
|
|
VALUES
|
|
(1, 'D01', 'Digestif'),
|
|
(1, 'D02', 'Orthopédie traumatologie'),
|
|
(1, 'D03', 'Traumatismes multiples ou complexes graves'),
|
|
(1, 'D04', 'Rhumatologie'),
|
|
(1, 'D05', 'Système nerveux (hors cathétérismes vasculaires diagnostiques et interventionnels)'),
|
|
(1, 'D06', 'Cathétérismes vasculaires diagnostiques et interventionnels'),
|
|
(1, 'D07', 'Cardio-vasculaire (hors cathétérismes vasculaires diagnostiques et interventionnels)'),
|
|
(1, 'D09', 'Pneumologie'),
|
|
(1, 'D10', 'ORL, Stomatologie'),
|
|
(1, 'D11', 'Ophtalmologie'),
|
|
(1, 'D12', 'Gynécologie - sein'),
|
|
(1, 'D13', 'Obstétrique'),
|
|
(1, 'D14', 'Nouveau-nés et période périnatale'),
|
|
(1, 'D15', 'Uro-néphrologie et génital '),
|
|
(1, 'D16', 'Hématologie'),
|
|
(1, 'D17', 'Chimiothérapie, radiothérapie, hors séances'),
|
|
(1, 'D18', 'Maladies infectieuses (dont VIH)'),
|
|
(1, 'D19', 'Endocrinologie'),
|
|
(1, 'D20', 'Tissu cutané et tissu sous-cutané'),
|
|
(1, 'D21', 'Brûlures'),
|
|
(1, 'D22', 'Psychiatrie'),
|
|
(1, 'D23', 'Toxicologie, Intoxications, Alcool'),
|
|
(1, 'D24', 'Douleurs chroniques, Soins palliatifs'),
|
|
(1, 'D25', 'Transplant. d''organes'),
|
|
(1, 'D26', 'Activités inter spécialités, suivi thérapeutique d''affections connues'),
|
|
(1, 'D27', 'Séances'),
|
|
(1, 'D90', 'Séjours en erreur')
|
|
;
|
|
|
|
-- 3/3 : Màj de la table iCTI
|
|
UPDATE pmsi.t_ghm_da SET
|
|
code = w_dbsetup.code
|
|
FROM w_dbsetup
|
|
WHERE
|
|
t_ghm_da.oid = w_dbsetup.oid
|
|
AND w_dbsetup.oid = 0;
|
|
|
|
UPDATE pmsi.t_ghm_da SET
|
|
texte = w_dbsetup.texte
|
|
FROM w_dbsetup
|
|
WHERE
|
|
t_ghm_da.code = w_dbsetup.code
|
|
AND (
|
|
t_ghm_da.texte IS DISTINCT FROM w_dbsetup.texte
|
|
);
|
|
|
|
|
|
INSERT INTO pmsi.t_ghm_da(oid, code, texte)
|
|
SELECT oid, code, texte
|
|
FROM w_dbsetup
|
|
WHERE
|
|
oid = 0
|
|
AND oid NOT IN (SELECT oid FROM pmsi.t_ghm_da);
|
|
|
|
|
|
INSERT INTO pmsi.t_ghm_da(code, texte)
|
|
SELECT code, texte
|
|
FROM w_dbsetup
|
|
WHERE
|
|
oid <> 0
|
|
AND code NOT IN (SELECT code FROM pmsi.t_ghm_da);
|