在 Excel 中使用 SQL 查询按正确顺序显示列

在 Excel 中使用 SQL 查询按正确顺序显示列

我目前正在 Excel 中使用 SQL 查询,以便用户可以通过刷新工作表来获取结果。

结果正在显示,但列的顺序与我的查询的顺序不同

在 Excel 中的“数据”选项卡中,我从其他来源中选择,并从 SQL Server 中选择,然后连接到我的数据库。我可以选择输入我的 SQL 命令(查询),它运行得很好。但列的顺序与我的查询中指定的顺序不同。

select p.first_name + ' ' + p.last_name as Name, CONVERT(CHAR(10), dob, 101) AS DOB, st.id_no AS ID, addr.address, e.program_name as Program_Name
--case when end_date is null then 'Y' else 'N' end as 'Enrolled?' 

from programenrollment e With (NoLock)  


join people p on e.people = p.people
left outer join service_track st WITH(NOLOCK) ON p.people = st.people
left outer join person_address addr on st.people = addr.people



 where e.is_deleted = 0

and((end_date is null) or (end_date >= GETDATE()))
and e.people is not null
and program_name in (
  'Physical Education',
  'Music'

) 


order by name, e.program_name--, st.id_no

Microsoft SQL Server Management Studio 中的结果:

NAME, DOB, ID, ADDRESS, PROGRAM_NAME 

Excel 中的结果

PROGRAM_NAME, ID, ADDRESS, DOB,NAME

Excel

sql server management studio 中的结果

我尝试重写查询,但结果还是一样。可以解决这个问题吗?

答案1

我不确定这是否是一个答案,但外部数据属性是否可能影响您的现场位置?

在此处输入图片描述

相关内容