如何解决如何在选择结果集的顶部添加“ ustom”行?
这是执行此操作的安全方法:
select name, email
from ((select 'name' as name, 'email' as email, 1 as which
) union all
(select name, email, 2 as which from [dbo].[testTable]
)
) t
order by which;
在实践中,union all
将起作用:
select 'name' as name, 'email' as email
union all
select name, email from [dbo].[testTable]
但是,我找不到能保证第一个子查询在第二个查询之前完成的文档。sql Server 中 的基础运算符 确实 具有此行为(或者至少在我上次进行调查时在sql Server 2008 中 具有此行为)。
解决方法
我可以像使用t-sql一样使用select语句来选择并拉出记录列表:
select * from [dbo].[testTable];
但是,如何在结果集的顶部添加“自定义”行呢?
例如,如果结果集是:
John john@email.com
Max max@domain.com
我要向结果集中添加一行(不是表中的行),以便它看起来像这样:
Name Email
John john@email.com
Max max@domain.com
之所以要执行此操作,是因为我要通过sqlcmd将其导出到一个csv文件中,并且要添加这些“自定义行”作为标题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。