[英]SQL server 2008 R2, select one value of a column for each distinct value of another column
[英]Select many values as one column, not a column for each value, SQL Server
如果在SQL Server中执行此查询,它将为您提供15个不同的列 - 每个邮政编码一个。
SELECT
'CB89RX', 'CB259BL', 'CB19BF', 'CB245HS', 'CB30AP', 'CB12LJ',
'CB21RB', 'CB28PX', 'CB28PE', 'CB250HX', 'CB231HN', 'CB58TD',
'CB246AY', 'CB42QT', 'CB249JA' AS A
我想要的是包含所有15个值的1列。 我怎样才能做到这一点?
您可以尝试使用UNPIVOT
select u.postcode
from tablename
unpivot
(
postcode
for val in (CB89RX, CB259BL, CB19BF, CB245HS, CB30AP, CB12LJ, CB21RB, CB28PX, CB28PE, CB250HX, CB231HN, CB58TD, CB246AY, CB42QT, CB249JA)
) u;
你可以使用union:
SELECT 'CB89RX' as PostalCode
Union
Select 'CB19BF' as PostalCode
Union
Select 'CB245HS' as PostalCode
Union
...
试试这个以避免重复使用as 。
SELECT 'CB89RX' as A
union
select 'CB259BL'
union
select 'CB19BF'
union
select 'CB245HS'
union
select 'CB30AP'
union
select 'CB12LJ'
union
select 'CB21RB'
union
select 'CB28PX'
union
select 'CB28PE'
union
select 'CB250HX'
union
select 'CB231HN'
union
select 'CB58TD'
union
select 'CB246AY'
union
select 'CB42QT'
union
select 'CB249JA'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.