sql 查询优化:COUNT(*)改成COUNT(1)

This commit is contained in:
夏菊 2025-11-06 18:10:29 +08:00
parent c54c470818
commit c7187ebd36
16 changed files with 48 additions and 48 deletions

View File

@ -162,7 +162,7 @@ namespace BLL
public static DataSet GetListData(string projectId, string name, string startDate, string endDate, int startRowIndex, int maximumRows)
{
string sql = @"SELECT AcceptanceCheckMan,COUNT(*) SunNumber,COUNT(IsOnceQualified) OneStatisticsSunNumber,COUNT(IsOnceQualified)*100/COUNT(*) as OneStatistics
string sql = @"SELECT AcceptanceCheckMan,COUNT(1) SunNumber,COUNT(IsOnceQualified) OneStatisticsSunNumber,COUNT(IsOnceQualified)*100/COUNT(*) as OneStatistics
FROM[dbo].[ProcessControl_InspectionManagement]
where InspectionDate is not null
";

View File

@ -36,8 +36,8 @@ namespace FineUIPro.Web.DCGL.ServerCheck
sb.Append($@"SELECT S.CheckRectifyId,S.CheckRectifyCode,S.ProjectId,S.ProjectName,S.UnitId,U.UnitName,S.CheckDate,CASE S.HandleState WHEN '{BLL.Const.State_1}' THEN '未签发' WHEN '{BLL.Const.State_2}' THEN '未上报' ELSE '已上报' END AS HandleState,
S.IssueMan,S.IssueDate,ISNULL(TotalCount.TotalCount,0) AS TotalCount ,ISNULL(CompleteCount.CompleteCount,0) AS CompleteCount,(ISNULL(TotalCount.TotalCount,0) -ISNULL(CompleteCount.CompleteCount,0)) AS UnCompleteCount ");
sb.Append("FROM dbo.DCGL_Check_CheckRectify AS S LEFT JOIN dbo.Base_Unit AS U ON U.UnitId = S.UnitId ");
sb.Append(" LEFT JOIN (SELECT COUNT(*) AS TotalCount, CheckRectifyId FROM dbo.DCGL_Check_CheckRectifyItem GROUP BY CheckRectifyId) AS TotalCount ON S.CheckRectifyId=TotalCount.CheckRectifyId ");
sb.Append(" LEFT JOIN (SELECT COUNT(*) AS CompleteCount, CheckRectifyId FROM dbo.DCGL_Check_CheckRectifyItem WHERE RealEndDate IS NOT NULL GROUP BY CheckRectifyId) AS CompleteCount ON S.CheckRectifyId=CompleteCount.CheckRectifyId ");
sb.Append(" LEFT JOIN (SELECT COUNT(1) AS TotalCount, CheckRectifyId FROM dbo.DCGL_Check_CheckRectifyItem GROUP BY CheckRectifyId) AS TotalCount ON S.CheckRectifyId=TotalCount.CheckRectifyId ");
sb.Append(" LEFT JOIN (SELECT COUNT(1) AS CompleteCount, CheckRectifyId FROM dbo.DCGL_Check_CheckRectifyItem WHERE RealEndDate IS NOT NULL GROUP BY CheckRectifyId) AS CompleteCount ON S.CheckRectifyId=CompleteCount.CheckRectifyId ");
if (!string.IsNullOrWhiteSpace(proType) && proType == "1")
{//只查询本项目检查数据
sb.Append($"WHERE S.ProjectId='{this.CurrUser.LoginProjectId}' ");

View File

@ -95,7 +95,7 @@ namespace FineUIPro.Web.DataShow
)f WHERE 1=1 ";
#region
var strSqlSum = @"select Count(*)as allCount from(
var strSqlSum = @"select COUNT(1)as allCount from(
select ROW_NUMBER() OVER(Order by ProjectCode desc) AS RowNumber,
* from (
select

View File

@ -38,11 +38,11 @@ namespace FineUIPro.Web.DataShow
private void BindGrid()
{
string strSql = @"SELECT P.ProjectId,P.ProjectCode,P.ProjectName
,(SELECT COUNT(*) FROM Project_Installation AS A WHERE A.ProjectId =P.ProjectId AND A.SuperInstallationId='0') AS count1
,(SELECT COUNT(*) FROM WBS_UnitWork AS B WHERE B.ProjectId =P.ProjectId) AS count2
,(SELECT COUNT(*) FROM WBS_DivisionProject AS C WHERE C.ProjectId =P.ProjectId AND C.SubItemType= '1') AS count3
,(SELECT COUNT(*) FROM WBS_DivisionProject AS D WHERE D.ProjectId =P.ProjectId AND D.SubItemType= '3') AS count4
,(SELECT COUNT(*) FROM WBS_BreakdownProject AS E WHERE E.ProjectId =P.ProjectId ) AS count5
,(SELECT COUNT(1) FROM Project_Installation AS A WHERE A.ProjectId =P.ProjectId AND A.SuperInstallationId='0') AS count1
,(SELECT COUNT(1) FROM WBS_UnitWork AS B WHERE B.ProjectId =P.ProjectId) AS count2
,(SELECT COUNT(1) FROM WBS_DivisionProject AS C WHERE C.ProjectId =P.ProjectId AND C.SubItemType= '1') AS count3
,(SELECT COUNT(1) FROM WBS_DivisionProject AS D WHERE D.ProjectId =P.ProjectId AND D.SubItemType= '3') AS count4
,(SELECT COUNT(1) FROM WBS_BreakdownProject AS E WHERE E.ProjectId =P.ProjectId ) AS count5
FROM Base_Project AS P
WHERE P.ProjectState = 1 ";
List<SqlParameter> listStr = new List<SqlParameter>();

View File

@ -64,19 +64,19 @@ namespace FineUIPro.Web.DataShow
}
else if (rbType.SelectedValue == "3")
{
strSql += " AND (SELECT COUNT(*) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId =Cer.CertificateId WHERE Q.PersonId = Person.PersonId AND IsRegisterHSSE =1) > 0";
strSql += " AND (SELECT COUNT(1) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId =Cer.CertificateId WHERE Q.PersonId = Person.PersonId AND IsRegisterHSSE =1) > 0";
}
else if (rbType.SelectedValue == "4")
{
strSql += " AND (SELECT COUNT(*) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId =Cer.CertificateId WHERE Q.PersonId = Person.PersonId AND CertificateType ='A') > 0";
strSql += " AND (SELECT COUNT(1) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId =Cer.CertificateId WHERE Q.PersonId = Person.PersonId AND CertificateType ='A') > 0";
}
else if (rbType.SelectedValue == "5")
{
strSql += " AND (SELECT COUNT(*) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId =Cer.CertificateId WHERE Q.PersonId = Person.PersonId AND CertificateType ='B') > 0";
strSql += " AND (SELECT COUNT(1) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId =Cer.CertificateId WHERE Q.PersonId = Person.PersonId AND CertificateType ='B') > 0";
}
else if (rbType.SelectedValue == "6")
{
strSql += " AND (SELECT COUNT(*) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId =Cer.CertificateId WHERE Q.PersonId = Person.PersonId AND CertificateType ='C') > 0";
strSql += " AND (SELECT COUNT(1) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId =Cer.CertificateId WHERE Q.PersonId = Person.PersonId AND CertificateType ='C') > 0";
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);

View File

@ -253,14 +253,14 @@ namespace FineUIPro.Web.DataShow
private void OutputSummaryData()
{
string strSql = @"select ProjectId,ProjectCode, ProjectName ,
isnull((select count(*) from Hazard_HazardSelectedItem as a
isnull((select count(1) from Hazard_HazardSelectedItem as a
where (a.IsStart=1 or a.State = '1') and a.ProjectId=p.ProjectId
and (a.HazardLevel='1' or a.HazardLevel=(select top 1 RiskLevelId from Base_RiskLevel where RiskLevel='1'))),0) as Count1,
isnull((select count(*) from Hazard_HazardSelectedItem as a where (a.IsStart=1 or a.State = '1') and a.ProjectId=p.ProjectId
isnull((select count(1) from Hazard_HazardSelectedItem as a where (a.IsStart=1 or a.State = '1') and a.ProjectId=p.ProjectId
and (a.HazardLevel='2' or a.HazardLevel=(select top 1 RiskLevelId from Base_RiskLevel where RiskLevel='2'))),0) as Count2,
isnull((select count(*) from Hazard_HazardSelectedItem as a where (a.IsStart=1 or a.State = '1') and a.ProjectId=p.ProjectId
isnull((select count(1) from Hazard_HazardSelectedItem as a where (a.IsStart=1 or a.State = '1') and a.ProjectId=p.ProjectId
and (a.HazardLevel='3' or a.HazardLevel=(select top 1 RiskLevelId from Base_RiskLevel where RiskLevel='3'))),0) as Count3,
isnull((select count(*) from Hazard_HazardSelectedItem as a where (a.IsStart=1 or a.State = '1') and a.ProjectId=p.ProjectId
isnull((select count(1) from Hazard_HazardSelectedItem as a where (a.IsStart=1 or a.State = '1') and a.ProjectId=p.ProjectId
and (a.HazardLevel='4' or a.HazardLevel=(select top 1 RiskLevelId from Base_RiskLevel where RiskLevel='4'))),0) as Count4
from Base_Project as P where ProjectState =1 ";
List<SqlParameter> listStr = new List<SqlParameter>();

View File

@ -38,7 +38,7 @@ namespace FineUIPro.Web.HJGL.LeakVacuum
LEFT JOIN dbo.PTP_PipelineList AS IsoList ON IsoList.PipelineId = IsoInfo.PipelineId
LEFT JOIN PTP_TestPackage As Test ON Test.PTP_ID =IsoList.PTP_ID
WHERE IsoInfo.ProjectId= @ProjectId
AND UnitWork.UnitWorkId= @UnitWorkId and (select count(*) from HJGL_LV_Pipeline p where p.PipelineId=IsoInfo.PipelineId)=0";
AND UnitWork.UnitWorkId= @UnitWorkId and (select count(1) from HJGL_LV_Pipeline p where p.PipelineId=IsoInfo.PipelineId)=0";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
if (!string.IsNullOrEmpty(PTP_ID))

View File

@ -38,7 +38,7 @@ namespace FineUIPro.Web.HJGL.PurgingCleaning
LEFT JOIN dbo.PTP_PipelineList AS IsoList ON IsoList.PipelineId = IsoInfo.PipelineId
LEFT JOIN PTP_TestPackage As Test ON Test.PTP_ID =IsoList.PTP_ID
WHERE IsoInfo.ProjectId= @ProjectId And Test.FinishDef is not null
AND UnitWork.UnitWorkId= @UnitWorkId and (select count(*) from HJGL_PC_Pipeline p where p.PipelineId=IsoInfo.PipelineId)=0";
AND UnitWork.UnitWorkId= @UnitWorkId and (select count(1) from HJGL_PC_Pipeline p where p.PipelineId=IsoInfo.PipelineId)=0";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
listStr.Add(new SqlParameter("@UnitWorkId", UnitWorkId));

View File

@ -36,7 +36,7 @@ namespace FineUIPro.Web.HJGL.TestPackage
LEFT JOIN dbo.Base_TestMedium AS testMedium ON testMedium.TestMediumId = IsoInfo.TestMedium
LEFT JOIN dbo.Base_PipingClass class ON class.PipingClassId = IsoInfo.PipingClassId
WHERE IsoInfo.ProjectId= @ProjectId AND UnitWork.UnitWorkId= @UnitWorkId
and (select count(*) from PTP_PipelineList p where p.PipelineId=IsoInfo.PipelineId)=0";
and (select count(1) from PTP_PipelineList p where p.PipelineId=IsoInfo.PipelineId)=0";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
listStr.Add(new SqlParameter("@UnitWorkId", UnitWorkId));

View File

@ -69,7 +69,7 @@ namespace FineUIPro.Web.HSSE.Check
/// </summary>
private void BindGrid()
{
string strSql = "SELECT PunishNotice.PunishNoticeId,PunishNotice.ProjectId,CodeRecords.Code AS PunishNoticeCode,PunishNotice.UnitId,PunishNotice.PunishNoticeDate,PunishNotice.BasicItem,PunishNotice.PunishMoney,PunishStates,ISNULL(PunishNotice.Currency, '人民币') AS Currency, PunishNotice.FileContents,PunishNotice.AttachUrl,PunishNotice.CompileMan,PunishNotice.CompileDate,Sign.UserName AS SignManName,Approve.UserName AS ApproveManName,PunishNotice.ContractNum,PunishNotice.States,Unit.UnitName,(CASE WHEN PunishNotice.PunishStates = '0' THEN '待[' + Users.UserName + ']提交' WHEN PunishNotice.PunishStates = '1' THEN '待[' + Sign.UserName + ']签发' WHEN PunishNotice.PunishStates = '2' THEN '待[' + Approve.UserName + ']批准' WHEN PunishNotice.PunishStates = '3' THEN '待[' + Duty.UserName + ']回执' WHEN(SELECT COUNT(*) FROM AttachFile WHERE ToKeyId = PunishNotice.PunishNoticeId AND MenuId = '" + BLL.Const.ProjectPunishNoticeMenuId + "') > 0 THEN '已闭环' ELSE '未回执' END) AS RetrunSateName FROM Check_PunishNotice AS PunishNotice" +
string strSql = "SELECT PunishNotice.PunishNoticeId,PunishNotice.ProjectId,CodeRecords.Code AS PunishNoticeCode,PunishNotice.UnitId,PunishNotice.PunishNoticeDate,PunishNotice.BasicItem,PunishNotice.PunishMoney,PunishStates,ISNULL(PunishNotice.Currency, '人民币') AS Currency, PunishNotice.FileContents,PunishNotice.AttachUrl,PunishNotice.CompileMan,PunishNotice.CompileDate,Sign.UserName AS SignManName,Approve.UserName AS ApproveManName,PunishNotice.ContractNum,PunishNotice.States,Unit.UnitName,(CASE WHEN PunishNotice.PunishStates = '0' THEN '待[' + Users.UserName + ']提交' WHEN PunishNotice.PunishStates = '1' THEN '待[' + Sign.UserName + ']签发' WHEN PunishNotice.PunishStates = '2' THEN '待[' + Approve.UserName + ']批准' WHEN PunishNotice.PunishStates = '3' THEN '待[' + Duty.UserName + ']回执' WHEN(SELECT COUNT(1) FROM AttachFile WHERE ToKeyId = PunishNotice.PunishNoticeId AND MenuId = '" + BLL.Const.ProjectPunishNoticeMenuId + "') > 0 THEN '已闭环' ELSE '未回执' END) AS RetrunSateName FROM Check_PunishNotice AS PunishNotice" +
" LEFT JOIN Sys_CodeRecords AS CodeRecords ON PunishNotice.PunishNoticeId = CodeRecords.DataId " +
" LEFT JOIN Sys_FlowOperate AS FlowOperate ON PunishNotice.PunishNoticeId = FlowOperate.DataId AND FlowOperate.IsClosed <> 1" +
" LEFT JOIN Sys_User AS OperateUser ON FlowOperate.OperaterId = OperateUser.UserId" +

View File

@ -68,7 +68,7 @@ namespace FineUIPro.Web.HSSE.QualityAudit
string strSql = @"SELECT DISTINCT PersonQuality.PersonQualityId,Person.PersonId,Person.ProjectId,Person.CardNo,Person.PersonName,Unit.UnitId,Unit.UnitCode,Unit.UnitName,WorkPost.WorkPostId,WorkPost.WorkPostName,WorkPost.WorkPostCode,"
+ @" PersonQuality.CertificateNo,PersonQuality.CertificateName,PersonQuality.Grade,PersonQuality.SendUnit,PersonQuality.SendDate,PersonQuality.LimitDate,PersonQuality.LateCheckDate,"
+ @" PersonQuality.ApprovalPerson,PersonQuality.Remark,PersonQuality.CompileMan,Users.UserName AS CompileManName,PersonQuality.CompileDate,Auditor.UserName AS AuditorName,AuditDate,"
+ @" case when (select count(*) from QualityAudit_PersonQuality pq where pq.PersonId=Person.PersonId)>0 then '有资质' else '无资质' end as ExitQuality "
+ @" case when (select count(1) from QualityAudit_PersonQuality pq where pq.PersonId=Person.PersonId)>0 then '有资质' else '无资质' end as ExitQuality "
+ @" FROM SitePerson_Person AS Person "
+ @" LEFT JOIN Base_Unit AS Unit ON Unit.UnitId = Person.UnitId"
+ @" LEFT JOIN QualityAudit_PersonQuality AS PersonQuality ON Person.PersonId = PersonQuality.PersonId "

View File

@ -43,7 +43,7 @@ namespace FineUIPro.Web.PZHGL.InformationProject
{
string strSql = @"SELECT ReceiveFileManager.ReceiveFileManagerId,(ReceiveFileManager.ReceiveFileManagerId+'#1') AS ReReceiveFileManagerId,ReceiveFileManager.ProjectId,CodeRecords.Code AS ReceiveFileCode,ReceiveFileManager.ReceiveFileName,ReceiveFileManager.Version,Unit.UnitName,ReceiveFileManager.FileCode,ReceiveFileManager.FilePageNum,ReceiveFileManager.GetFileDate,ReceiveFileManager.States "
+ @" ,(CASE WHEN ReceiveFileManager.States = " + Const.State_0 + " OR ReceiveFileManager.States IS NULL THEN '待['+OperateUser.UserName+']提交' WHEN ReceiveFileManager.States = " + BLL.Const.State_2 + " THEN '审核/审批完成' ELSE '待['+OperateUser.UserName+']办理' END) AS FlowOperateName"
+ @" ,(CASE WHEN ReceiveFileManager.States != 2 THEN '未审核完成' WHEN (SELECT COUNT(*) FROM AttachFile WHERE ToKeyId =(ReceiveFileManager.ReceiveFileManagerId+'#1')) > 0 THEN '已闭环' ELSE '未回执' END) AS RetrunSateName"
+ @" ,(CASE WHEN ReceiveFileManager.States != 2 THEN '未审核完成' WHEN (SELECT COUNT(1) FROM AttachFile WHERE ToKeyId =(ReceiveFileManager.ReceiveFileManagerId+'#1')) > 0 THEN '已闭环' ELSE '未回执' END) AS RetrunSateName"
+ @" FROM InformationProject_ReceiveFileManager AS ReceiveFileManager "
+ @" LEFT JOIN Sys_CodeRecords AS CodeRecords ON ReceiveFileManager.ReceiveFileManagerId=CodeRecords.DataId "
+ @" LEFT JOIN Sys_FlowOperate AS FlowOperate ON ReceiveFileManager.ReceiveFileManagerId=FlowOperate.DataId AND FlowOperate.IsClosed <> 1"

View File

@ -92,15 +92,15 @@ left join Transfer_LHCSystemList lhcs on f.ProjectId=lhcs.ProjectId and f.SubSys
left join Transfer_SystemControl ts on f.ProjectId=ts.ProjectId and f.SubSysNo=ts.SystemNo
--piping
left join (select count(*)as PipingCount,ProjectId,TestPackage from Transfer_Piping
left join (select count(1)as PipingCount,ProjectId,TestPackage from Transfer_Piping
group by ProjectId,TestPackage)
tpi on f.ProjectId=tpi.ProjectId and f.SubSysNo=tpi.TestPackage
left join (select count(*)as PipingScount,ProjectId,TestPackage from Transfer_Piping where PressureTestCompleted='Completed'
left join (select count(1)as PipingScount,ProjectId,TestPackage from Transfer_Piping where PressureTestCompleted='Completed'
group by ProjectId,TestPackage)
tpi1 on f.ProjectId=tpi1.ProjectId and f.SubSysNo=tpi1.TestPackage
left join (select count(*)as ReinstateScount,ProjectId,TestPackage from Transfer_Piping where Reduction='Completed'
left join (select count(1)as ReinstateScount,ProjectId,TestPackage from Transfer_Piping where Reduction='Completed'
group by ProjectId,TestPackage)
tpi2 on f.ProjectId=tpi2.ProjectId and f.SubSysNo=tpi2.TestPackage
@ -109,55 +109,55 @@ group by ProjectId,TestPackage)
tpi3 on f.ProjectId=tpi3.ProjectId and f.SubSysNo=tpi3.TestPackage
--
left join (select count(*)as TseCount,ProjectId,TestPackage from Transfer_StaticEquipment
left join (select count(1)as TseCount,ProjectId,TestPackage from Transfer_StaticEquipment
group by ProjectId,TestPackage)
tse on f.ProjectId=tse.ProjectId and f.SubSysNo=tse.TestPackage
left join (select count(*)as TseSCount,ProjectId,TestPackage from Transfer_StaticEquipment where MechanicalFINALStatus='Completed'
left join (select count(1)as TseSCount,ProjectId,TestPackage from Transfer_StaticEquipment where MechanicalFINALStatus='Completed'
group by ProjectId,TestPackage)
tse1 on f.ProjectId=tse1.ProjectId and f.SubSysNo=tse1.TestPackage
--
left join (select count(*)as TreCount,ProjectId,TestPackage from Transfer_RotatingEquipment
left join (select count(1)as TreCount,ProjectId,TestPackage from Transfer_RotatingEquipment
group by ProjectId,TestPackage)
tre on f.ProjectId=tre.ProjectId and f.SubSysNo=tre.TestPackage
left join (select count(*)as TreSCount,ProjectId,TestPackage from Transfer_RotatingEquipment where MechanicalFINALStatus='Completed'
left join (select count(1)as TreSCount,ProjectId,TestPackage from Transfer_RotatingEquipment where MechanicalFINALStatus='Completed'
group by ProjectId,TestPackage)
tre1 on f.ProjectId=tre1.ProjectId and f.SubSysNo=tre1.TestPackage
--Transfer_Electrical
left join (select count(*)as TeCount,ProjectId,Test_Package from Transfer_Electrical
left join (select count(1)as TeCount,ProjectId,Test_Package from Transfer_Electrical
group by ProjectId,Test_Package)
te on f.ProjectId=te.ProjectId and f.SubSysNo=te.Test_Package
left join (select count(*)as TeScount,ProjectId,Test_Package from Transfer_Electrical where FINAL_Status='Completed'
left join (select count(1)as TeScount,ProjectId,Test_Package from Transfer_Electrical where FINAL_Status='Completed'
group by ProjectId,Test_Package)
te1 on f.ProjectId=te1.ProjectId and f.SubSysNo=te1.Test_Package
--Transfer_Instrumentation
left join (select count(*)as TiCount,ProjectId,Test_Package from Transfer_Instrumentation
left join (select count(1)as TiCount,ProjectId,Test_Package from Transfer_Instrumentation
group by ProjectId,Test_Package)
ti on f.ProjectId=ti.ProjectId and f.SubSysNo=ti.Test_Package
left join (select count(*)as TiScount,ProjectId,Test_Package from Transfer_Instrumentation where FINAL_Status='Completed'
left join (select count(1)as TiScount,ProjectId,Test_Package from Transfer_Instrumentation where FINAL_Status='Completed'
group by ProjectId,Test_Package)
ti1 on f.ProjectId=ti1.ProjectId and f.SubSysNo=ti1.Test_Package
--Transfer_Civil_Structure
left join (select count(*)as TcsCount,ProjectId,Test_Package from Transfer_Civil_Structure
left join (select count(1)as TcsCount,ProjectId,Test_Package from Transfer_Civil_Structure
group by ProjectId,Test_Package)
tcs on f.ProjectId=tcs.ProjectId and f.SubSysNo=tcs.Test_Package
left join (select count(*)as TcsScount,ProjectId,Test_Package from Transfer_Civil_Structure where FINAL_Status='Completed'
left join (select count(1)as TcsScount,ProjectId,Test_Package from Transfer_Civil_Structure where FINAL_Status='Completed'
group by ProjectId,Test_Package)
tcs1 on f.ProjectId=tcs1.ProjectId and f.SubSysNo=tcs1.Test_Package
--Transfer_Telecom
left join (select count(*)as TtCount,ProjectId,Test_Package from Transfer_Telecom
left join (select count(1)as TtCount,ProjectId,Test_Package from Transfer_Telecom
group by ProjectId,Test_Package)
Tt on f.ProjectId=Tt.ProjectId and f.SubSysNo=Tt.Test_Package
left join (select count(*)as TtScount,ProjectId,Test_Package from Transfer_Telecom where FINAL_Status='Completed'
left join (select count(1)as TtScount,ProjectId,Test_Package from Transfer_Telecom where FINAL_Status='Completed'
group by ProjectId,Test_Package)
Tt1 on f.ProjectId=Tt1.ProjectId and f.SubSysNo=Tt1.Test_Package

View File

@ -35,8 +35,8 @@ namespace FineUIPro.Web.ZHGL.ServerCheck
strSql = "SELECT S.CheckRectifyId,S.CheckRectifyCode,S.ProjectId,S.UnitId,U.UnitName,S.CheckDate,CASE S.HandleState WHEN '" + BLL.Const.State_1 + "' THEN '未签发' WHEN '" + BLL.Const.State_2 + "' THEN '未上报' ELSE '已上报' END AS HandleState,"
+ @" S.IssueMan,S.IssueDate,ISNULL(TotalCount.TotalCount,0) AS TotalCount ,ISNULL(CompleteCount.CompleteCount,0) AS CompleteCount,(ISNULL(TotalCount.TotalCount,0) -ISNULL(CompleteCount.CompleteCount,0)) AS UnCompleteCount"
+ @" FROM dbo.Check_CheckRectify AS S LEFT JOIN dbo.Base_Unit AS U ON U.UnitId = S.UnitId"
+ @" LEFT JOIN (SELECT COUNT(*) AS TotalCount, CheckRectifyId FROM dbo.Check_CheckRectifyItem GROUP BY CheckRectifyId) AS TotalCount ON S.CheckRectifyId=TotalCount.CheckRectifyId"
+ @" LEFT JOIN (SELECT COUNT(*) AS CompleteCount, CheckRectifyId FROM dbo.Check_CheckRectifyItem WHERE RealEndDate IS NOT NULL GROUP BY CheckRectifyId) AS CompleteCount ON S.CheckRectifyId=CompleteCount.CheckRectifyId"
+ @" LEFT JOIN (SELECT COUNT(1) AS TotalCount, CheckRectifyId FROM dbo.Check_CheckRectifyItem GROUP BY CheckRectifyId) AS TotalCount ON S.CheckRectifyId=TotalCount.CheckRectifyId"
+ @" LEFT JOIN (SELECT COUNT(1) AS CompleteCount, CheckRectifyId FROM dbo.Check_CheckRectifyItem WHERE RealEndDate IS NOT NULL GROUP BY CheckRectifyId) AS CompleteCount ON S.CheckRectifyId=CompleteCount.CheckRectifyId"
+ @" ORDER BY HandleState";
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);

View File

@ -1639,9 +1639,9 @@ left join (select PlanNum,RealNum,QuantityListId from JDGL_QuantityCompletion wh
FROM GJSX
LEFT JOIN Sys_User AS users ON users.UserId =@userId
WHERE GJSX.ProjectId=@projectId AND
GJSX.State != 0 AND (((select count(*) from GJSX_detail detail where detail.Progress_user=@userId and detail.GJSXID=GJSX.GJSXID)=0
and (select count(*) from GJSX_Process process where process.UserId=@userId and process.GJSXID=GJSX.GJSXID)>0)
or (GJSX.User_Acceptance like '%'+@userId+'%' and (select count(*) from GJSX_detail detail where detail.GJSXID=GJSX.GJSXID)=(select count(*) from GJSX_Process process where process.GJSXID=GJSX.GJSXID))
GJSX.State != 0 AND (((select count(1) from GJSX_detail detail where detail.Progress_user=@userId and detail.GJSXID=GJSX.GJSXID)=0
and (select count(1) from GJSX_Process process where process.UserId=@userId and process.GJSXID=GJSX.GJSXID)>0)
or (GJSX.User_Acceptance like '%'+@userId+'%' and (select count(1) from GJSX_detail detail where detail.GJSXID=GJSX.GJSXID)=(select count(1) from GJSX_Process process where process.GJSXID=GJSX.GJSXID))
)
UNION ALL
SELECT GJSXID AS DataId
@ -1721,9 +1721,9 @@ left join (select PlanNum,RealNum,QuantityListId from JDGL_QuantityCompletion wh
FROM GJSX
LEFT JOIN Sys_User AS users ON users.UserId =@userId
WHERE GJSX.ProjectId=@projectId AND
GJSX.State != 0 AND (((select count(*) from GJSX_detail detail where detail.Progress_user=@userId and detail.GJSXID=GJSX.GJSXID)=0
and (select count(*) from GJSX_Process process where process.UserId=@userId and process.GJSXID=GJSX.GJSXID)>0)
or (GJSX.User_Acceptance like '%'+@userId+'%' and (select count(*) from GJSX_detail detail where detail.GJSXID=GJSX.GJSXID)=(select count(*) from GJSX_Process process where process.GJSXID=GJSX.GJSXID))
GJSX.State != 0 AND (((select count(1) from GJSX_detail detail where detail.Progress_user=@userId and detail.GJSXID=GJSX.GJSXID)=0
and (select count(1) from GJSX_Process process where process.UserId=@userId and process.GJSXID=GJSX.GJSXID)>0)
or (GJSX.User_Acceptance like '%'+@userId+'%' and (select count(1) from GJSX_detail detail where detail.GJSXID=GJSX.GJSXID)=(select count(1) from GJSX_Process process where process.GJSXID=GJSX.GJSXID))
)
UNION ALL
SELECT GJSXID AS DataId

View File

@ -118,7 +118,7 @@ namespace FineUIPro.Web.common
LEFT JOIN Base_Unit AS Unit ON Person.UnitId =Unit.UnitId
LEFT JOIN Base_WorkPost AS WorkPost ON Person.WorkPostId =WorkPost.WorkPostId
WHERE IsUsed=1 AND InTime <=GETDATE() AND (OutTime IS NULL OR OutTime > GETDATE())
AND (SELECT COUNT(*) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId
AND (SELECT COUNT(1) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId
=Cer.CertificateId WHERE Q.PersonId = Person.PersonId AND IsRegisterHSSE =1) > 0";
List<SqlParameter> listStr = new List<SqlParameter>();
SqlParameter[] parameter = listStr.ToArray();
@ -161,7 +161,7 @@ namespace FineUIPro.Web.common
LEFT JOIN Base_Unit AS Unit ON Person.UnitId =Unit.UnitId
LEFT JOIN Base_WorkPost AS WorkPost ON Person.WorkPostId =WorkPost.WorkPostId
WHERE IsUsed=1 AND InTime <=GETDATE() AND (OutTime IS NULL OR OutTime > GETDATE())
AND (SELECT COUNT(*) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId
AND (SELECT COUNT(1) FROM QualityAudit_PersonQuality AS Q LEFT JOIN Base_Certificate AS Cer ON Q.CertificateId
=Cer.CertificateId WHERE Q.PersonId = Person.PersonId AND IsRegisterHSSE =1) > 0 and Person.ProjectId in (" + s1 + ")";
List<SqlParameter> listStr = new List<SqlParameter>();
SqlParameter[] parameter = listStr.ToArray();