| 76 | -- POUR LES LANCEMENTS FINAUX IL A FALLU LANCER UN INDEX ET RAJOUTER UNE CLE PRIMAIRE |
| 77 | Alter table rht.rht_topology add constraint c_pk_id_drain primary key (id_drain); |
| 78 | CREATE INDEX id_drain_index ON rht.rht_topology |
| 79 | USING btree |
| 80 | (id_drain); |
| 81 | |
| 82 | select rht.distance_source(100000,200000); |
| 83 | select rht.distance_source(200001,300000); |
| 84 | select rht.distance_source(300001,400000); |
| 85 | select rht.distance_source(400001,600000); |
| 86 | |
| 87 | -- pour essai pour voir ce qui se passe dans la requête |
| 88 | |
| 89 | SELECT 212340, MAX(dmer+length/2) as dmer FROM rht.rht_topology WHERE id_drain IN ( |
| 90 | SELECT CAST(ltree2text(subpath(chemin, -1, 1))as integer) FROM rht.rht_topology where chemin ~ '*.212340.*' ) |
| 91 | |
| 92 | |
| 93 | select * from rht.rht_topology t join rht.distance_source s on s.id_drain=t.id_drain where distance is null; --323 |
| 94 | |
| 95 | -- il faudra enlever la dmer de 212340 |
| 96 | |
77 | | alter table rht.distance_source d add column distance source numeric; |
78 | | update rht.distance_source set distance source = sub.distance_source from ( |
79 | | select id_drain, distance-dmer as distance_source from rht.distance_source s joint rht.rht_topology t on s.id_drain=t.id_drain) as source |
80 | | where sub.id_drain=d.id_drain; |
| 98 | alter table rht.distance_source add column distance_source numeric; |
| 99 | select count(*) from rht.distance_source; --57067 que les noeuds non source |
| 100 | |
| 101 | -- mise à jour des distances source dans la table distance source (il faut encore enlever dmer) |
| 102 | update rht.distance_source d set distance_source = sub.distance_source from ( |
| 103 | select t.id_drain, distance-dmer as distance_source from rht.distance_source s join rht.rht_topology t on s.id_drain=t.id_drain) as sub |
| 104 | where sub.id_drain=d.id_drain; --57067 |
| 105 | |
| 106 | -- copie des valeurs de distance_source dans dsource de la table rht.rht_topology |
| 107 | update rht.rht_topology t set dsource=distance_source |
| 108 | from rht.distance_source d where d.id_drain=t.id_drain; --57067 |
| 109 | |
| 110 | -- mise à jour des distances_source (pour l'instant valeurs = null) pour les noeuds source (pour les derniers c'est la moitié de la longueur du segment) |
| 111 | update rht.rht_topology t set dsource=length/2 where noeudsource; |
| 112 | -- nombre de |
| 113 | select count(*)as count, noeudsource from rht.rht_topology where dsource is null group by noeudsource; |
| 114 | |
| 115 | |