在SQL选择查询中插入虚拟行
我正在处理SQL Server存储过程。我有一个表“User”,其中包含字段(Id、名称、电子邮件、地址) 我有以下返回所有用户的查询在SQL选择查询中插入虚拟行,sql,sql-server,stored-procedures,Sql,Sql Server,Stored Procedures,我正在处理SQL Server存储过程。我有一个表“User”,其中包含字段(Id、名称、电子邮件、地址) 我有以下返回所有用户的查询 select * from [User] 它返回所有用户,但我只想在返回之前将下面的虚拟用户插入到结果记录中 User=>Id=0,Name=“全部” 此记录不会出现在数据库中,但在返回结果时,我希望将此记录作为第一条记录插入,然后作为剩余用户插入。我试图找到类似的内容,但没有成功。即使应用了UNION ALL,您甚至可以通过数字设置列来保持顺序 SELECT
select * from [User]
它返回所有用户,但我只想在返回之前将下面的虚拟用户插入到结果记录中
User=>Id=0,Name=“全部”
此记录不会出现在数据库中,但在返回结果时,我希望将此记录作为第一条记录插入,然后作为剩余用户插入。我试图找到类似的内容,但没有成功。即使应用了
UNION ALL
,您甚至可以通过数字设置列来保持顺序
SELECT 0 AS Id, 'All' AS Name
UNION ALL
SELECT Id, Name FROM Users;
SELECT 0 RNO, 0 AS Id, 'All' AS Name
UNION ALL
SELECT ROW_NUMBER() OVER(ORDER BY Id)RNO, Id, Name
FROM Users
即使列
Id
中存在0
(可能是垃圾值)使用“从onerowtable中选择0,'全部'进行联合”,这也会起作用。谢谢rob。很好,不用担心,很高兴能帮上忙。谢谢。对于像我这样的新手来说,语法相当复杂。您可以随时使用。最好的祝愿:)@Bilal AhmedThanks再次感谢您的时间和帮助。