如何将条件放在由别名创建的列名称上

时间:2014-02-17 13:57:37

标签: sql-server

如果我在运行时创建列,如何在列上放置条件?假设我的员工表有empnameempsal

现在我正在编写一个类似的查询:

select empname, (empsal*2) as 'doublesalary' from employee where doublesalary > 30000

我可以这样做:

select empname, (empsal*2) as 'doublesalary' from employee where (sal*2) > 30000

但如果我想在该别名列上放置条件怎么办?

有办法吗?

1 个答案:

答案 0 :(得分:1)

如果在此示例中避免代码重复非常重要,您可以 create a view

如果这似乎太多了,你可以选择这样的选择:

select empname, doublesalary
from (
    select empname, (empsal*2) as doublesalary from employee
) as employee2
where doublesalary > 30000;

这是 select from a select 答案的小提琴。