小编Bil*_*ems的帖子

在 SQL Server 中使用内部联接检索时如何避免重复记录

这是我用于打印目的的存储过程。我遇到了问题,因为由于评论加入,我获得了两次记录。我想获得下面提到的输出。我是 DB 的新手。在这方面的帮助将不胜感激。

DECLARE @path AS VARCHAR(100)
SET @path = N'~/BillAttachments/166/'
DECLARE @billID AS INT
SET @billID = 166

SELECT bh.billID,bh.statusID,bh.modifiedOn,bs.statusName
FROM dbo.eInvoice_tbl_billHistory AS bh
--INNER JOIN dbo.eInvoice_tbl_billAttachment AS ba ON bh.billID = ba.billID
--INNER JOIN dbo.eInvoice_tbl_billAttachment AS ba ON ba.billID = bh.billID
INNER JOIN dbo.eInvoice_tbl_billStatus AS bs ON bh.statusID = bs.statusID
WHERE bh.billID=@billID;
Run Code Online (Sandbox Code Playgroud)

当我尝试从所需的表中获取这些列时

ba.attachmentID ,
        @path + ba.fileName AS asad ,
        ba.attachmentDescription ,
        ba.billAttachmentStatus,
Run Code Online (Sandbox Code Playgroud)

输出是:

166 3   2015-11-30 11:44:18.663 Approve
166 3   2015-11-30 11:44:18.663 Approve
166 5   2015-11-30 …
Run Code Online (Sandbox Code Playgroud)

sql database sql-server stored-procedures inner-join

0
推荐指数
1
解决办法
5067
查看次数