| Line 1... |
Line 1... |
| 1 |
/*
|
1 |
/*
|
| 2 |
Objectif: prendre les observations dont nom_sel_nn est défini
|
2 |
Objectif: prendre les observations dont nom_sel_nn est défini
|
| 3 |
(et donc dans laquelles les informations générées sont correctes)
|
3 |
(et donc dans laquelles les informations générées sont correctes)
|
| 4 |
et mettre à jour ces dernières à partir de la dernière version du référentiel
|
4 |
et mettre à jour ces dernières à partir de la dernière version du référentiel
|
| 5 |
(bdtfx et bdtxa).
|
5 |
(bdtfx, bdtxa et isfan).
|
| - |
|
6 |
|
| - |
|
7 |
Pour éviter un maximum de faux-positifs, nous vérifions aussi que la famille
|
| - |
|
8 |
est conservée (même dans certains cas celle-ci a légitimement changé) et que
|
| - |
|
9 |
la première partie du nom_sel correspond toujours à la première partie du nouveau nom_sci
|
| - |
|
10 |
qui serait attribué.
|
| 6 |
*/
|
11 |
*/
|
| Line 7... |
Line 12... |
| 7 |
|
12 |
|
| 8 |
--- la requête ---
|
13 |
--- la requête ---
|
| 9 |
/*
|
14 |
/*
|
| 10 |
-- SELECT id_observation, b.num_nom, CONCAT(b.nom_sci, ' ', b.auteur), b.num_taxonomique, b.famille
|
15 |
-- SELECT id_observation, b.num_nom, CONCAT(b.nom_sci, ' ', b.auteur), b.num_taxonomique, b.famille
|
| 11 |
SELECT id_observation, nom_ret, nom_ret_nn, nt, c.famille
|
16 |
SELECT id_observation, nom_ret, nom_ret_nn, nt, c.famille
|
| 12 |
FROM `BASEEDIT`.`cel_obs` c, `BASESOURCE`.`TABLEBDTFX` b
|
17 |
FROM `BASEEDIT`.`cel_obs` c, `BASESOURCE`.`TABLEBDTFX` b
|
| 13 |
WHERE (
|
18 |
WHERE (
|
| 14 |
nom_sel_nn IS NOT NULL AND nom_sel_nn != 0
|
19 |
nom_sel_nn IS NOT NULL
|
| 15 |
AND nom_referentiel like 'bdtfx%'
|
20 |
AND nom_referentiel like 'bdtfx%'
|
| 16 |
AND nom_sel_nn = num_nom
|
21 |
AND nom_sel_nn = num_nom
|
| 17 |
)
|
22 |
)
|
| 18 |
ORDER BY id_observation asc;
|
23 |
ORDER BY id_observation asc;
|
| Line 23... |
Line 28... |
| 23 |
c.nom_ret = CONCAT(b.nom_sci, ' ', b.auteur),
|
28 |
c.nom_ret = CONCAT(b.nom_sci, ' ', b.auteur),
|
| 24 |
c.nom_ret_nn = b.num_nom,
|
29 |
c.nom_ret_nn = b.num_nom,
|
| 25 |
c.nt = b.num_taxonomique,
|
30 |
c.nt = b.num_taxonomique,
|
| 26 |
c.famille = b.famille
|
31 |
c.famille = b.famille
|
| 27 |
WHERE (
|
32 |
WHERE (
|
| 28 |
nom_sel_nn IS NOT NULL AND nom_sel_nn != 0
|
33 |
nom_sel_nn IS NOT NULL
|
| 29 |
AND nom_referentiel like 'bdtfx%'
|
34 |
AND nom_referentiel = 'bdtfx'
|
| 30 |
AND nom_sel_nn = num_nom
|
35 |
AND nom_sel_nn = num_nom
|
| 31 |
AND LOWER(c.famille) = LOWER(b.famille)
|
36 |
AND LOWER(c.famille) = LOWER(b.famille)
|
| 32 |
AND SUBSTRING_INDEX(c.nom_sel, ' ', 1) = SUBSTRING_INDEX(b.nom_sci, ' ', 1)
|
37 |
AND SUBSTRING_INDEX(c.nom_sel, ' ', 1) = SUBSTRING_INDEX(b.nom_sci, ' ', 1)
|
| 33 |
);
|
38 |
);
|
| 34 |
-- 31739 sans les restrictions sur famille et SUBSTRING_INDEX()
|
39 |
-- 31739 sans les restrictions sur famille et SUBSTRING_INDEX()
|
| Line 39... |
Line 44... |
| 39 |
c.nom_ret = CONCAT(a.nom_sci, ' ', a.auteur),
|
44 |
c.nom_ret = CONCAT(a.nom_sci, ' ', a.auteur),
|
| 40 |
c.nom_ret_nn = a.num_nom,
|
45 |
c.nom_ret_nn = a.num_nom,
|
| 41 |
c.nt = a.num_tax,
|
46 |
c.nt = a.num_tax,
|
| 42 |
c.famille = a.famille
|
47 |
c.famille = a.famille
|
| 43 |
WHERE (
|
48 |
WHERE (
|
| 44 |
nom_sel_nn IS NOT NULL AND nom_sel_nn != 0
|
49 |
nom_sel_nn IS NOT NULL
|
| 45 |
AND nom_referentiel like 'bdtxa%'
|
50 |
AND nom_referentiel = 'bdtxa'
|
| 46 |
AND nom_sel_nn = num_nom
|
51 |
AND nom_sel_nn = num_nom
|
| 47 |
AND LOWER(c.famille) = LOWER(a.famille)
|
52 |
AND LOWER(c.famille) = LOWER(a.famille)
|
| 48 |
AND SUBSTRING_INDEX(c.nom_sel, ' ', 1) = SUBSTRING_INDEX(a.nom_sci, ' ', 1)
|
53 |
AND SUBSTRING_INDEX(c.nom_sel, ' ', 1) = SUBSTRING_INDEX(a.nom_sci, ' ', 1)
|
| 49 |
);
|
54 |
);
|
| 50 |
-- 49 sans les restrictions sur famille et SUBSTRING_INDEX()
|
55 |
-- 49 sans les restrictions sur famille et SUBSTRING_INDEX()
|
| 51 |
-- 47 avec les restrictions sur famille et SUBSTRING_INDEX()
|
56 |
-- 47 avec les restrictions sur famille et SUBSTRING_INDEX()
|
| Line 52... |
Line 57... |
| 52 |
|
57 |
|
| 53 |
UPDATE `BASEEDIT`.`cel_obs` c, `BASESOURCE`.`isfan_v2013` a SET
|
58 |
UPDATE `BASEEDIT`.`cel_obs` c, `BASESOURCE`.`TABLEISFAN` i SET
|
| 54 |
c.nom_ret = CONCAT(a.nom_sci, ' ', a.auteur),
|
59 |
c.nom_ret = CONCAT(i.nom_sci, ' ', i.auteur),
|
| 55 |
c.nom_ret_nn = a.num_nom,
|
60 |
c.nom_ret_nn = i.num_nom,
|
| 56 |
c.nt = a.num_taxonomique,
|
61 |
c.nt = i.num_taxonomique,
|
| 57 |
c.famille = a.famille
|
62 |
c.famille = i.famille
|
| 58 |
WHERE (
|
63 |
WHERE (
|
| 59 |
nom_sel_nn IS NOT NULL AND nom_sel_nn != 0
|
64 |
nom_sel_nn IS NOT NULL
|
| 60 |
AND nom_referentiel like 'isfan%'
|
65 |
AND nom_referentiel = 'isfan'
|
| 61 |
AND nom_sel_nn = num_nom
|
66 |
AND nom_sel_nn = num_nom
|
| Line 62... |
Line 67... |
| 62 |
);
|
67 |
);
|