@@ -44,11 +44,11 @@ ALTER TABLE configuration
4444
4545SELECT * FROM pgr_dijkstra(
4646 ' SELECT v.id, source, target,
47- cost * penalty AS cost,
48- reverse_cost * penalty AS reverse_cost
47+ CASE WHEN cost <= 0 THEN -1 ELSE cost * penalty END AS cost,
48+ CASE WHEN reverse_cost <= 0 THEN -1 ELSE reverse_cost * penalty END AS reverse_cost
4949 FROM vehicle_net AS v JOIN configuration
5050 USING (tag_id)' ,
51- @ID_3@, @ID_1@);
51+ @ID_3@, @ID_1@);
5252
5353\o update_penalty .txt
5454
@@ -72,11 +72,11 @@ WHERE tag_value IN (
7272
7373SELECT * FROM pgr_dijkstra(
7474 ' SELECT v.id, source, target,
75- cost * penalty AS cost,
76- reverse_cost * penalty AS reverse_cost
75+ CASE WHEN cost <= 0 THEN -1 ELSE cost * penalty END AS cost,
76+ CASE WHEN reverse_cost <= 0 THEN -1 ELSE reverse_cost * penalty END AS reverse_cost
7777 FROM vehicle_net AS v JOIN configuration
7878 USING (tag_id)' ,
79- @ID_3@, @ID_1@);
79+ @ID_3@, @ID_1@);
8080
8181\o time_in_secs .txt
8282
@@ -86,13 +86,11 @@ SELECT * FROM pgr_dijkstra(
8686 FROM (
8787 -- Nested call
8888 SELECT edge AS id FROM pgr_dijkstra(
89- '
90- SELECT v.id, source, target,
91- cost * penalty AS cost,
92- reverse_cost * penalty AS reverse_cost
93- FROM vehicle_net AS v JOIN configuration
94- USING (tag_id)
95- ' ,
89+ ' SELECT v.id, source, target,
90+ CASE WHEN cost <= 0 THEN -1 ELSE cost * penalty END AS cost,
91+ CASE WHEN reverse_cost <= 0 THEN -1 ELSE reverse_cost * penalty END AS reverse_cost
92+ FROM vehicle_net AS v JOIN configuration
93+ USING (tag_id)' ,
9694 @ID_3@, @ID_1@) ) AS edges_in_route
9795 JOIN vehicle_net USING (id)
9896 $$,
@@ -103,8 +101,8 @@ SELECT * FROM pgr_dijkstra(
103101CREATE OR REPLACE VIEW penalized AS
104102SELECT
105103 v .id , source, target,
106- cost * penalty AS cost,
107- reverse_cost * penalty AS reverse_cost
104+ CASE WHEN cost <= 0 THEN - 1 ELSE cost * penalty END AS cost,
105+ CASE WHEN reverse_cost <= 0 THEN - 1 ELSE reverse_cost * penalty END AS reverse_cost
108106FROM vehicle_net AS v JOIN configuration
109107USING (tag_id);
110108
0 commit comments