我正在尝试从(设计不佳的)sql 数据库中创建一个新的数据提取。客户要求我添加一个我尝试使用 NEWID() 函数执行的 distinctidentifier。不幸的是,这会导致返回多个重复记录。
经过一番研究,我发现 NEWID() 函数确实“撤消”了 distinct 关键字的使用,但我无法弄清楚为什么或如何克服这个问题。
我尝试编写的查询示例如下:
select distinct
NEWID() as UUID
,Histo_Results_File.ISRN
,Histo_Results_File.Internal_Patient_No
,Histo_Results_File.Date_of_Birth
,Histo_Result_freetext.histo_report
,Histo_Report.Date_Report_Updated as [Investigation_Result_Date]
from apex.Histo_Results_File
inner join apex.Histo_Report on (Histo_Report.Histo_Results_File = Histo_Results_File.ID)
如果我错过了选择块中的 NEWID() 行,我会返回 569 条记录,这是正确的,但如果我包含该行,那么我会得到超过 30,000 条记录,这些记录都是原始 569 条的重复,但 ID 不同。任何人都可以提出解决这个问题的方法吗?
提前致谢