【发布时间】:2016-10-31 18:09:17
【问题描述】:
我的数据库架构中有几个类型列。
例如,有一个type_id 列,它可以是主要地址、次要地址、工作地址或旧地址。
查询员工的所有旧地址如下所示:
select a.*
from employees e
join employeeaddresses ea on ea.employee_id = e.employee_id
join addresses a on ea.adress_id = a.address_id
where ea.type_id = 4 -- old addresses
我想介绍一个内部映射到 4 的数据库范围常量 TYPE_OLDADDRESS。
所以查询看起来像这样:
select a.*
from employees e
join employeeaddresses ea on ea.employee_id = e.employee_id
join addresses a on ea.adress_id = a.address_id
where ea.type_id = TYPE_OLDADDRESS;
postgres 能做到这一点还是有解决办法?
【问题讨论】:
-
我会使用一个函数:
where ea.type_id = type_oldaddress()
标签: postgresql