我希望我的查询结果(返回一行)以这样的文本显示:
columnA: value
columnB: value
columnC: value
就像使用 MySQL 时发生的那样
select * from tablename G
有没有办法做到这一点?这样做的原因是,能够打印出一条包含示例数据的列和值的记录,或者从具有许多列且难以在屏幕上查看的表中共享记录很有帮助。
它不像你的MySQL示例那么简单,但你可以做一个非透视来得到你想要的东西。
---------------
-- TEST SCHEMA
---------------
declare @tablename as Table(keyvalue varchar(2), dataColA varchar(2), dataColB varchar(2), dataColC varchar(2))
insert into @tablename select '01', '02', '03', '04'
---------------
-- UNPIVOT
---------------
select dataColumns, dataValues
from @tablename
unpivot
(
dataValues
for dataColumns in (keyvalue, dataColA, dataColB, dataColC)
) u;
完成我想要的最简单方法是
- 对结果网格执行查询,如有必要,限制为前 1 名,以确保只返回一行,
- 右键单击左上角,使用标题复制
- 打开Excel,粘贴
- 选择刚刚粘贴的内容,然后在Excel中再次复制
- 转到工作簿或新工作表的空白区域,然后选择性粘贴,转置
这将为每个数据库查询列创建一行,列名在 A 列中,值在列 B 中。