Asp.net 显示批准和挂起的文档

Asp.net 显示批准和挂起的文档,asp.net,sql,sql-server-2008,stored-procedures,Asp.net,Sql,Sql Server 2008,Stored Procedures,当用户上传文档时,文档保存在此表中,并将值设置为3表示这是在pedning中 DocID DocName UploadedDate Uploadfile DocTypeID DepID ApproveID UploadedBy UserID 36 erp system 2014-02-03 Presentation1.pptx 1 4 3 noreen 21 当主管批准/拒绝本文件时

当用户上传文档时,文档保存在此表中,并将值设置为3表示这是在pedning中

 DocID      DocName UploadedDate    Uploadfile  DocTypeID   DepID   ApproveID    UploadedBy UserID  
36        erp system 2014-02-03     Presentation1.pptx  1    4        3           noreen    21  
当主管批准/拒绝本文件时,则批准对1的更改,例如批准

所以我想显示当第一个用户上传文档,然后他/她查看文档时,哪些文档处于peding、approve和reject状态

这是我尝试的sp

ALTER procedure [dbo].[UserIDDoc]

@UserID int
as
Select 
 dbo.DocumentInfo.DocID as DocumentID, 
   dbo.DocumentInfo.DocName as DocumentName, 
 dbo.DocumentInfo.UploadedDate as UploadedDate,
 dbo.DocType.DocType as Document, 

 dbo.Department.DepType as Department, 
dbo.DocumentInfo.Uploadfile as FileUploaded,

 dbo.ApproveType.ApproveType AS Status 

FROM 
dbo.DocumentInfo
inner JOIN dbo.DocType ON dbo.DocumentInfo.DocTypeID=dbo.DocType.DocTypeID
inner JOIN dbo.Department ON dbo.DocumentInfo.DepID=dbo.Department.DepID

left join dbo.ApproveType on dbo.DocumentInfo.ApproveID=dbo.ApproveType.ApproveID
INNER JOIN dbo.Approval ON dbo.DocumentInfo.DocID = dbo.Approval.DocID 

 where UserID=@UserID AND dbo.Approval.DesigID = 3
但当我执行这个sp时,它会显示如下

DocumentID  DocumentName    UploadedDate    Document    Department       FileUploaded                               Status
    36          ERP SYSTEM       2014-01-20     MSWord  Computer Science    system admin first assignment.docx  Pending
    36          ERP SYSTEM      2014-01-20  MSWord  Computer Science    system admin first assignment.docx  Pending
    36          ERP SYSTEM      2014-01-20  MSWord  Computer Science    system admin first assignment.docx  Pending
    39           def          2014-01-22    MSWord  Human Resource  BISE RAWALPINDI.docx                  Approve
但是我想要这个

DocumentID  DocumentName    UploadedDate    Document    Department       FileUploaded                     Status
 36         ERP SYSTEM      2014-01-20  MSWord  Computer Science    system admin first assignment.docx  Pending
 39          def          2014-01-22    MSWord  Human Resource  BISE RAWALPINDI.docx                  Approve

尝试添加DISTINCT关键字

 Select DISTINCT 
         dbo.DocumentInfo.DocID as DocumentID,    
         dbo.DocumentInfo.DocName as DocumentName,  
         dbo.DocumentInfo.UploadedDate as UploadedDate,  
         dbo.DocType.DocType as Document, 
         dbo.Department.DepType as Department,  
         dbo.DocumentInfo.Uploadfile as FileUploaded,
         dbo.ApproveType.ApproveType AS Status 
 FROM  dbo.DocumentInfo 
 inner JOIN dbo.DocType    ON  dbo.DocumentInfo.DocTypeID=dbo.DocType.DocTypeID 
 inner JOIN dbo.Department ON dbo.DocumentInfo.DepID=dbo.Department.DepID
 left join dbo.ApproveType on dbo.DocumentInfo.ApproveID=dbo.ApproveType.ApproveID 
 INNER JOIN  dbo.Approval ON dbo.DocumentInfo.DocID = dbo.Approval.DocID     
 where UserID=@UserID AND dbo.Approval.DesigID = 3

使用

DISTINCT关键字告诉SQL在所有列中只显示一行而不是多行。是否可以提供更多有关为什么这是一个好主意的信息?如何使用它。等等。只有链接的答案是不赞成的。