如何最好的别名IN条件?

时间:2015-06-17 14:34:34

标签: sql

我试图将IN条件别名为按地区分组状态。在SQL中编写此代码的最佳方法是什么,因为我无法对WHERE子句进行别名?

select state_cd from table
where state_cd in (‘PA’,’NY’,’NJ’,’CT’,’RI’,’MA’,’VT’,’NH’,’ME’) Northeast;

2 个答案:

答案 0 :(得分:1)

如果需要,请在列select state_cd as Northeast上使用别名,但不能在IN子句中使用。

或者,如果CASE字段可能有多个不同的变体,请使用state_cd声明。

答案 1 :(得分:0)

如果您只是需要它以获得可读性,则可以创建该名称的表/视图/ cte并加入它。

with Northeast as (Select 'PA' as state_cd union Select 'NY' union Select 'NY' union Select 'NJ' union Select 'CT' union Select 'RI' union Select 'MA' union Select 'VT' union Select 'NH' union Select 'ME')

select * 
  from table
         join Northeast on table.state_cd = Northeast.state_cd