gpt4 book ai didi

sql - 使用 INNER JOIN 获取 DISTINCT 记录

转载 作者:搜寻专家 更新时间:2023-10-30 20:04:51 24 4
gpt4 key购买 nike

我在多表上有 follwong 查询

SELECT DISTINCT b.BoxBarcode as [Box Barcode], (select case when  b.ImagesCount IS NULL
then 0
else b.ImagesCount end) as [Total Images], s.StageName as [Current Stage] ,d.DocuementTypeName as [Document Type],
u.UserName as [Start User],uu.UserName as [Finished User]

FROM [dbo].[Operations] o
inner join dbo.LKUP_Stages s on
o.stageid=s.id
inner join dbo.LKUP_Users u on
u.id=o.startuserid
left join dbo.LKUP_Users uu on
uu.id=o.FinishedUserID
inner join boxes b on
b.id=o.boxid
inner join LKUP_DocumentTypes d on
d.ID = b.DocTypeID

where b.IsExportFinished = 0

当我从 Boxes 表中选择计数时,其中 IsExportFinished = 0我得到了 Count 42 条记录,当我运行上面的查询时,我得到了 71 条记录,我只想检索 Boxes 表中的 42 条记录。

最佳答案

您正在进行一对多连接,即至少有一个表有多个行符合连接条件。

第一步是找到给出“重复项”的表。

完成后,您可以通过向联接添加其他条件来解决问题。我猜测相同的 boxidOperations 表中出现了多次。如果是这种情况,您需要决定要选择哪个 Operation 行,然后相应地更新 SQL。

关于sql - 使用 INNER JOIN 获取 DISTINCT 记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18100831/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com