[英]What do I need to change in my T-SQL pivot query to achieve this specific output?
[英]How do I append a row with specific values to the output of my T-SQL query?
我正在使用SQL Server 2014,我有以下运行良好的T-SQL查询:
SELECT Id, Name from TravelAgency
此查询的输出的最后一行如下所示:
Id Name
--- ----
--- ----
715 AB Ltd
我想“手动”将以下值附加到此查询的结果集:(999,XY Ltd),以便运行修改后的查询将给出以下结果:
Id Name
--- ----
--- ----
715 AB Ltd
999 XY Ltd
为简化起见,查询从TravelAgency表中提取请求的数据,并在输出结束时ADDS指定的值。 我需要在查询中添加这些特定值,但我无法弄清楚如何做到这一点!
使用联合全部:
select id, name from xxx -- is your query
union all
select 999 as id, 'XY Ltd' as name
编辑:除了@ThorstenKettner的评论:如果ID不是nummeric或由于任何原因你不能使用它进行排序,那么你可以这样做:
select ID, Name
from
(
select 1 as SpecialSort, ID, Name from xxx -- is your query
union all
select 2 as SpecialSort, 999 as ID, 'XY Ltd' as Name
) AllData
order by SpecialSort asc -- like this your manually added row will appear at the end
使用UNION
附加所需的条目以及返回结果集。 如果999 XY Ltd
条目已经存在,则可以避免。
SELECT Id, Name FROM TravelAgency
UNION
SELECT 999 AS [Id], 'XY Ltd' AS [Name]
如果999 XY Ltd
已经返回表格结果集并允许重复输入,您可以使用UNION ALL
并确保将999 XY Ltd
作为ORDER BY
最后一条记录
SELECT Id, Name FROM (
SELECT Id, Name FROM TravelAgency
UNION ALL
SELECT 999 AS [Id], 'XY Ltd' AS [Name]
) AS T
ORDER BY Id
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.