例如,我在这里有此查询
SELECT DISTINCT convert(varchar(10), PickupDate ,105) AS [Pickup dates] FROM info.dbo.A_Query_Detail AS D INNER JOIN info.dbo.A_Query_Header AS ACQ on ACQ.ID = D.Header_ID WHERE D.HeaderID = @HeaderID AND ACQ.PriceType = 'Pickup' GROUP BY Adrid, convert(varchar(10), PickupDate ,105)
我想在这里得到的只是列名,而不会与上面的查询冲突。因此,我的结果将类似于:如上所述的“ Column_Date”或“提货日期”。我对 sys.tables 有一些了解,但似乎无法使其与上述代码一起使用。
如果您想要列的列表,有时我会使用一个临时视图:
create view _MyView as <your query here>
然后,您可以执行以下操作:
select * from information_schema.columns where table_name = '_MyView'
通过执行此操作,您可以获取列名称和类型。
drop view _MyView
(当然,视图名称不应与其他任何名称冲突。)