小编Jac*_*ack的帖子

SELECT 和 WHERE 子句中的相同功能

初学者问题:

f(x, y)在数据库表中的两列 x 和 y 上有一个昂贵的函数。

我想执行一个查询,该查询将函数的结果作为列提供给我并对其施加约束,例如

SELECT *, f(x, y) AS func FROM table_name WHERE func < 10;
Run Code Online (Sandbox Code Playgroud)

但是这不起作用,所以我将不得不写一些类似的东西

SELECT *, f(x, y) AS func FROM table_name WHERE f(x, y) < 10;
Run Code Online (Sandbox Code Playgroud)

这会运行两次昂贵的函数吗?做到这一点的最佳方法是什么?

postgresql postgresql-9.4

11
推荐指数
2
解决办法
3152
查看次数

标签 统计

postgresql ×1

postgresql-9.4 ×1