前端之家收集整理的这篇文章主要介绍了
PostgreSQL:在同一查询中使用计算列,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在postgres中使用计算列时遇到麻烦.下面给出了一个类似于
sql的
代码,可以在Postgre
sql中重新创建吗?
select cost_1,quantity_1,cost_2,quantity_2,(cost_1 * quantity_1) as total_1,(cost_2 * quantity_2) as total_2,(calculated total_1 + calculated total_2) as total_3
from data;
在Postgresql中,类似的代码返回错误:
the column total_1 and total_2 do not exist.
您需要将SELECT语句包装到派生表中才能访问列别名:
select cost1,quantity_2
total_1 + total_2 as total_3
from (
select cost_1,(cost_2 * quantity_2) as total_2
from data
) t
不会有任何性能损失.
(我真的很惊讶你的原始sql语句在DBMS中运行)
原文链接:https://www.f2er.com/postgresql/192594.html