【发布时间】:2022-01-09 12:16:03
【问题描述】:
我的程序中有一个临时表,它与另一个临时表连接,它似乎需要一些时间才能运行。 谁能建议如何加快速度。
下面是我的一段代码:
declare @installs table
(
UserName varchar(200),
DeviceName varchar(500),
FirstSeenDate datetime
)
insert into @installs
SELECT [Username]
,[Device Name]
,min([First Seen]) as 'Install Date'
FROM [DataCollection].[dbo].[iBoss_Installed_Users]
where [Device Type] not like '%Server%'
group by [Device Name], Username
declare @installs_User table
(
UserName varchar(200),
InstalledDate varchar(max)
)
insert into @installs_User
select main.UserName,
left(main.installs,len(main.installs)-1) as "Installs"
From
(
select distinct ins2.UserName,
(
select convert(varchar(200),ins.FirstSeenDate)+', ' as [text()]
from @installs ins
where ins.UserName=ins2.UserName
order by ins.Username
for XML PATH('')
) [installs]
from @installs ins2
)[Main]
【问题讨论】:
-
你能展示一下表格吗,可能更容易理解你想要做什么。
-
对于与性能相关的问题,我们需要一个执行计划,您可以使用“粘贴计划”提供该计划。
-
@Dale K 似乎我的 XML PATH('') 需要时间。是否有任何替代方法
-
这真的适用于 SQL Server 2008 吗?
-
@MatBailie,不,我正在使用 sql server 2016
标签: sql sql-server tsql sql-server-2016 database-performance