我想要生成
SELECT DISTINCT
P.DOMAIN_ID,
P.SOURCE_SYSTEM_ID
FROM EDW.dbo.DOMAIN_VALUE AS P
WHERE P.ID = 4
AND CURRENT_FLAG = 'Y'
EXCEPT
( SELECT F.DOMAIN_ID,
F.SOURCE_SYSTEM_ID
FROM EDW.dbo.DOMAIN AS F
WHERE F.ID = 4
AND F.CURRENT_FLAG = 'Y'
)
FOR XML PATH('DOMAIN'),
ROOT('DOMAIN_VALUE')
Run Code Online (Sandbox Code Playgroud)
"结果"选项卡中的XML输出值为
<REFERENCE_DOMAIN_VALUE>
<REFERENCE_DOMAIN>
<REFERENCE_DOMAIN_ID>10799</REFERENCE_DOMAIN_ID>
<REFERENCE_SOURCE_SYSTEM_ID>7452-001</REFERENCE_SOURCE_SYSTEM_ID>
</REFERENCE_DOMAIN>
</REFERENCE_DOMAIN_VALUE>
Run Code Online (Sandbox Code Playgroud)
现在我需要将此XML转换为varchar(max),但结果必须相同.
我遇到了 CPU 使用问题。为了查找有关处理查询的信息,我使用了:
EXEC sp_who2
Run Code Online (Sandbox Code Playgroud)
我已经得到结果,在结果集中的一列中lastBatch。谁能解释一下 LastBatch 是什么以及它如何用于分析昂贵的查询?
我有业务场景
我们将把所有数据都包含在数据库中,包括重复数据
如果我们在表中有任何重复,则通过使所有剩余的deplicate记录标记为'X'来从特定键上的重复项中获取最新记录
处理到下一级别时会通过flag!='X'过滤提取,因此我们只能从一个关键字密钥的所有副本中获取一条最新记录.
我们如何更新除TOP 1记录之外的所有记录.
有什么想法吗
谢谢
prav