PostgreSQL:JOIN一次然后在多个SELECT语句中重用?

时间:2015-09-12 21:38:25

标签: sql postgresql join

我正在创建一个显示饼图的网络应用。为了在单个HTTP请求中获取图表的所有数据,我将多个SELECT语句与UNION ALL组合在一起。但是,每个SELECT语句必须执行完全相同的JOIN操作。有没有办法在前面执行JOIN,然后在每个新SELECT中重用该结果(例如像LATERAL,但是在SELECTs之间)?

1 个答案:

答案 0 :(得分:0)

听起来像我一样,从一个狭隘的角度来看这个。为什么你需要从Postgres出来的数据已经UNIONed切片和切块?一旦从Postgres或JavaScript端返回,您就可以在服务器端执行一些管理工作。

所以也许在PG中运行一个更简单的查询,然后用编程语言PHP或JS重新排列数据。

我并不是说用一个很棒的UNION查询做你正在谈论的事情是不可能的,但它听起来并不是非常有效。或者,如果你希望它从PG中切出并切成小块,你可以在商店程序中进行。

我不信任大问题:他们经常最终无法回应情况。如果您需要以一种查询方式完成数据调整,该怎么办?

我想如果您需要一个更具体的答案来完全按照您所说的内容进行操作,那么您可能需要提供更多详细信息。