这可能是由于起点无法到达终点或不存在路径的原因所致。可以通过检查起点和终点之间是否存在边来解决此问题。此外,还需要确保适当设置 Dijkstra 算法中的 cost 表示法和 reverse 表示法。以下是一个示例代码片段,可用于检查和解决此类问题:
SELECT * FROM pgr_dijkstra(
'SELECT id, source, target, cost FROM my_edges',
1, 5, false, false
) AS dijkstra_result
WHERE dijkstra_result.cost IS NOT NULL;
在这个例子中,我们在 my_edges 表中选择了 id、source、target 和 cost 列,然后使用起点 1 和终点 5 调用了 pgr_dijkstra。最后,我们使用 WHERE 子句来保证结果不为空并解决了 pgr_dijkstra 返回空的问题。