打开社保档案速度特别慢,跟踪数据库发现一条这个

栏目:s-hr cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-17浏览:1

打开社保档案速度特别慢,跟踪数据库发现一条这个

declare @p1 int
set @p1=180151123
declare @p3 int
set @p3=16
declare @p4 int
set @p4=1
declare @p5 int
set @p5=1
exec sp_cursoropen @p1 output,N'SELECT count(1) RECORDSCOUNT FROM (SELECT DISTINCT * FROM (SELECT DISTINCT "ADMINORGUNIT".FName_l2 "ADMINORGUNIT.NAME", "PERSON".FName_l2 "PERSON.NAME", "POSITION".FIndex "POSITION.INDEX", "PERSON".FIndex "PERSON.INDEXOF", "POSITION".FNumber "POSITION.NUMBER", "POSITION".FName_l2 "POSITION.NAME", "ADMINORGUNIT".FSortCode "ADMINORGUNIT.SORTCODE", "PERSON".FID "PERSON.ID", "PERSON".FNumber "PERSON.NUMBER" FROM T_BD_PERSON "PERSON" LEFT OUTER JOIN T_HR_EMPORGRELATION "EMPORGRELATION" ON (("EMPORGRELATION".FPersonID = "PERSON".FID AND "EMPORGRELATION".FIsInner = 1) AND (("EMPORGRELATION".FAssignType = 1 AND ("EMPORGRELATION".FEFFDT <= ''2017-12-13 00:00:00'')) AND ("EMPORGRELATION".FLEFFDT >= ''2017-12-13 00:00:00''))) LEFT OUTER JOIN T_ORG_ADMIN "ADMINORGUNIT" ON "ADMINORGUNIT".FID = "EMPORGRELATION".FADMINORGID LEFT OUTER JOIN T_ORG_POSITION "POSITION" ON "POSITION".FID = "EMPORGRELATION".FPOSITIONID LEFT OUTER JOIN T_HR_SCMPCALORG "CMPCALORG" ON "CMPCALORG".FPersonID = "PERSON".FID LEFT OUTER JOIN T_ORG_ADMIN "CMPCALORGUNIT" ON ("CMPCALORGUNIT".FID = "CMPCALORG".FCLUORGID AND (("CMPCALORGUNIT".FEFFDT <= ''2017-12-13 00:00:00'') AND ("CMPCALORGUNIT".FLEFFDT >= ''2017-12-13 00:00:00''))) LEFT OUTER JOIN T_HR_PERSONPOSITION "PP" ON "PP".FPersonID = "PERSON".FID WHERE ((("PERSON".FID IN (SELECT FID "PERSON.ID" FROM T_BD_Person) AND ("ADMINORGUNIT".FID IN (SELECT range.FOrgID FORGID FROM T_PM_OrgRange range LEFT OUTER JOIN T_ORG_ADMIN admin ON range.FORGID = admin.FID WHERE ((range.FUserID = ''256c221a-0106-1000-e000-10d7c0a813f413B7DE7F'' AND range.FType = 20) AND admin.FISSTARTSHR = 1)) OR "CMPCALORGUNIT".FID IN (SELECT range.FOrgID FORGID FROM T_PM_OrgRange range LEFT OUTER JOIN T_ORG_ADMIN admin ON range.FORGID = admin.FID WHERE ((range.FUserID = ''256c221a-0106-1000-e000-10d7c0a813f413B7DE7F'' AND range.FType = 20) AND admin.FISSTARTSHR = 1)))) AND ("ADMINORGUNIT".FLongNumber = ''01'' OR ("ADMINORGUNIT".FLongNumber LIKE ''01!%'') OR "CMPCALORGUNIT".FLongNumber = ''01'' OR ("CMPCALORGUNIT".FLongNumber LIKE ''01!%''))) AND (((((("PERSON".FEFFDT <= ''2017-12-13 00:00:00'') AND ("PERSON".FLEFFDT >= ''2017-12-13 00:00:00'')) AND ("PP".FEFFDT <= ''2017-12-13 00:00:00'')) AND ("PP".FLEFFDT >= ''2017-12-13 00:00:00'')) AND ("EMPORGRELATION".FEFFDT <= ''2017-12-13 00:00:00'')) AND ("EMPORGRELATION".FLEFFDT >= ''2017-12-13 00:00:00'')))) dynamicBillSql INNER JOIN (SELECT billTable."SOCFILESENTRY.ID" "SOCFILESENTRY.ID", billTable."FPERSONID" "FPERSONID", billTable."SOCEFFECTDAY" "SOCEFFECTDAY", billTable."JOINSOCORG" "JOINSOCORG", billTable."SOCTYPENAME" "SOCTYPENAME", entry1."SELFBASE" "ENTRY1.SELFBASE", entry1."COMPANYBASE" "ENTRY1.COMPANYBASE", entry1."EFFECTDAY" "ENTRY1.EFFECTDAY", entry2."SELFBASE" "ENTRY2.SELFBASE", entry2."COMPANYBASE" "ENTRY2.COMPANYBASE", entry2."EFFECTDAY" "ENTRY2.EFFECTDAY", entry3."SELFBASE" "ENTRY3.SELFBASE", entry3."COMPANYBASE" "ENTRY3.COMPANYBASE", entry3."EFFECTDAY" "ENTRY3.EFFECTDAY", entry4."SELFBASE" "ENTRY4.SELFBASE", entry4."COMPANYBASE" "ENTRY4.COMPANYBASE", entry4."EFFECTDAY" "ENTRY4.EFFECTDAY", entry5."SELFBASE" "ENTRY5.SELFBASE", entry5."COMPANYBASE" "ENTRY5.COMPANYBASE", entry5."EFFECTDAY" "ENTRY5.EFFECTDAY", entry6."SELFBASE" "ENTRY6.SELFBASE", entry6."COMPANYBASE" "ENTRY6.COMPANYBASE", entry6."EFFECTDAY" "ENTRY6.EFFECTDAY", entry7."SELFBASE" "ENTRY7.SELFBASE", entry7."COMPANYBASE" "ENTRY7.COMPANYBASE", entry7."EFFECTDAY" "ENTRY7.EFFECTDAY" FROM (SELECT "SOCFILESENTRY.ID", "FPERSONID", "SOCEFFECTDAY", "JOINSOCORG", "SOCTYPENAME" FROM (SELECT T_BD_Person.FID FPERSONID, socEmpSocFiles.fid "SOCFILESENTRY.ID", socEmpSocFiles.FSocAccount SOCACCOUNT, socEmpSocFiles.FHouseFundAccount HOUSEACCOUNT, socItem.FID FSOCITEMID, socItem.FNumber, socEmpSocFiles.FEffectDay "SOCEFFECTDAY", socItem.FName_L2 "SOCITEM.NAME", socType.FName_L2 "SOCTYPENAME", JoinSocOrg.FdisplayName_L2 "JOINSOCORG" FROM T_HR_SSocEmpSocFiles socEmpSocFiles INNER JOIN (SELECT FPersonId, max(FEffectDay) MAXEFFECTDAY, max(FCreateTime) CREATETIME FROM T_HR_SSocEmpSocFiles GROUP BY FPersonId) groupSql ON (socEmpSocFiles.FPersonID = groupSql.FPersonId AND socEmpSocFiles.FEffectDay = groupSql.maxEffectDay) LEFT OUTER JOIN T_HR_SSocEmpSocFilesEntry socFilesEntry ON socEmpSocFiles.Fid = socFilesEntry.FBillID LEFT OUTER JOIN T_HR_SSocType socType ON socType.Fid = socEmpSocFiles.FSocTypeID LEFT OUTER JOIN T_HR_SSocTypeItem ON T_HR_SSocTypeItem.Fid = socFilesEntry.FSocTypeItemID LEFT OUTER JOIN T_HR_SSocItem socItem ON socItem.Fid = T_HR_SSocTypeItem.FSocItemID RIGHT OUTER JOIN T_BD_Person ON T_BD_Person.Fid = socEmpSocFiles.FPersonId LEFT OUTER JOIN T_Org_Admin JoinSocOrg ON JoinSocOrg.Fid = socEmpSocFiles.FJoinSocOrgID) SELECTBILLTABLE) billTable LEFT OUTER JOIN (SELECT T_BD_Person.FID FPERSONID, socEmpSocFiles.fid "SOCFILESENTRY.ID", socFilesEntry.FCompanyBase "COMPANYBASE", socFilesEntry.FSelfBase "SELFBASE", socFilesEntry.FEffectDay "EFFECTDAY" FROM T_HR_SSocEmpSocFiles socEmpSocFiles LEFT OUTER JOIN T_HR_SSocEmpSocFilesEntry socFilesEntry ON socEmpSocFiles.Fid = socFilesEntry.FBillID LEFT OUTER JOIN T_HR_SSocType ON T_HR_SSocType.Fid = socEmpSocFiles.FSocTypeID LEFT OUTER JOIN T_HR_SSocTypeItem ON T_HR_SSocTypeItem.Fid = socFilesEntry.FSocTypeItemID LEFT OUTER JOIN T_HR_SSocItem socItem ON socItem.Fid = T_HR_SSocTypeItem.FSocItemID RIGHT OUTER JOIN T_BD_Person ON T_BD_Person.Fid = socEmpSocFiles.FPersonId LEFT OUTER JOIN T_Org_Admin JoinSocOrg ON JoinSocOrg.Fid = socEmpSocFiles.FJoinSocOrgID INNER JOIN (SELECT FPersonId, max(FEffectDay) MAXEFFECTDAY, max(FCreateTime) CREATETIME FROM T_HR_SSocEmpSocFiles GROUP BY FPersonId) groupSql ON (socEmpSocFiles.FPersonID = groupSql.FPersonId AND socEmpSocFiles.FEffectDay = groupSql.maxEffectDay) WHERE "FSOCITEMID" = ''Z4awPBOEQPu2sDP7aIcg1rLklYs='') entry1 ON (entry1."SOCFILESENTRY.ID" = billTable."SOCFILESENTRY.ID" AND entry1."FPERSONID" = billTable."FPERSONID") LEFT OUTER JOIN (SELECT T_BD_Person.FID FPERSONID, socEmpSocFiles.fid "SOCFILESENTRY.ID", socFilesEntry.FCompanyBase "COMPANYBASE", socFilesEntry.FSelfBase "SELFBASE", socFilesEntry.FEffectDay "EFFECTDAY" FROM T_HR_SSocEmpSocFiles socEmpSocFiles LEFT OUTER JOIN T_HR_SSocEmpSocFilesEntry socFilesEntry ON socEmpSocFiles.Fid = socFilesEntry.FBillID LEFT OUTER JOIN T_HR_SSocType ON T_HR_SSocType.Fid = socEmpSocFiles.FSocTypeID LEFT OUTER JOIN T_HR_SSocTypeItem ON T_HR_SSocTypeItem.Fid = socFilesEntry.FSocTypeItemID LEFT OUTER JOIN T_HR_SSocItem socItem ON socItem.Fid = T_HR_SSocTypeItem.FSocItemID RIGHT OUTER JOIN T_BD_Person ON T_BD_Person.Fid = socEmpSocFiles.FPersonId LEFT OUTER JOIN T_Org_Admin JoinSocOrg ON JoinSocOrg.Fid = socEmpSocFiles.FJoinSocOrgID INNER JOIN (SELECT FPersonId, max(FEffectDay) MAXEFFECTDAY, max(FCreateTime) CREATETIME FROM T_HR_SSocEmpSocFiles GROUP BY FPersonId) groupSql ON (socEmpSocFiles.FPersonID = groupSql.FPersonId AND socEmpSocFiles.FEffectDay = groupSql.maxEffectDay) WHERE "FSOCITEMID" = ''IOgAAAAAa0Wy5JWL'') entry2 ON (entry2."SOCFILESENTRY.ID" = billTable."SOCFILESENTRY.ID" AND entry2."FPERSONID" = billTable."FPERSONID") LEFT OUTER JOIN (SELECT T_BD_Person.FID FPERSONID, socEmpSocFiles.fid "SOCFILESENTRY.ID", socFilesEntry.FCompanyBase "COMPANYBASE", socFilesEntry.FSelfBase "SELFBASE", socFilesEntry.FEffectDay "EFFECTDAY" FROM T_HR_SSocEmpSocFiles socEmpSocFiles LEFT OUTER JOIN T_HR_SSocEmpSocFilesEntry socFilesEntry ON socEmpSocFiles.Fid = socFilesEntry.FBillID LEFT OUTER JOIN T_HR_SSocType ON T_HR_SSocType.Fid = socEmpSocFiles.FSocTypeID LEFT OUTER JOIN T_HR_SSocTypeItem ON T_HR_SSocTypeItem.Fid = socFilesEntry.FSocTypeItemID LEFT OUTER JOIN T_HR_SSocItem socItem ON socItem.Fid = T_HR_SSocTypeItem.FSocItemID RIGHT OUTER JOIN T_BD_Person ON T_BD_Person.Fid = socEmpSocFiles.FPersonId LEFT OUTER JOIN T_Org_Admin JoinSocOrg ON JoinSocOrg.Fid = socEmpSocFiles.FJoinSocOrgID INNER JOIN (SELECT FPersonId, max(FEffectDay) MAXEFFECTDAY, max(FCreateTime) CREATETIME FROM T_HR_SSocEmpSocFiles GROUP BY FPersonId) groupSql ON (socEmpSocFiles.FPersonID = groupSql.FPersonId AND socEmpSocFiles.FEffectDay = groupSql.maxEffectDay) WHERE "FSOCITEMID" = ''Mfs5Hc5mReCeFjmBsln6O7LklYs='') entry3 ON (entry3."SOCFILESENTRY.ID" = billTable."SOCFILESENTRY.ID" AND entry3."FPERSONID" = billTable."FPERSONID") LEFT OUTER JOIN (SELECT T_BD_Person.FID FPERSONID, socEmpSocFiles.fid "SOCFILESENTRY.ID", socFilesEntry.FCompanyBase "COMPANYBASE", socFilesEntry.FSelfBase "SELFBASE", socFilesEntry.FEffectDay "EFFECTDAY" FROM T_HR_SSocEmpSocFiles socEmpSocFiles LEFT OUTER JOIN T_HR_SSocEmpSocFilesEntry socFilesEntry ON socEmpSocFiles.Fid = socFilesEntry.FBillID LEFT OUTER JOIN T_HR_SSocType ON T_HR_SSocType.Fid = socEmpSocFiles.FSocTypeID LEFT OUTER JOIN T_HR_SSocTypeItem ON T_HR_SSocTypeItem.Fid = socFilesEntry.FSocTypeItemID LEFT OUTER JOIN T_HR_SSocItem socItem ON socItem.Fid = T_HR_SSocTypeItem.FSocItemID RIGHT OUTER JOIN T_BD_Person ON T_BD_Person.Fid = socEmpSocFiles.FPersonId LEFT OUTER JOIN T_Org_Admin JoinSocOrg ON JoinSocOrg.Fid = socEmpSocFiles.FJoinSocOrgID INNER JOIN (SELECT FPersonId, max(FEffectDay) MAXEFFECTDAY, max(FCreateTime) CREATETIME FROM T_HR_SSocEmpSocFiles GROUP BY FPersonId) groupSql ON (socEmpSocFiles.FPersonID = groupSql.FPersonId AND socEmpSocFiles.FEffectDay = groupSql.maxEffectDay) WHERE "FSOCITEMID" = ''TsfjNdIyQBaCBE6dpPA4SrLklYs='') entry4 ON (entry4."SOCFILESENTRY.ID" = billTable."SOCFILESENTRY.ID" AND entry4."FPERSONID" = billTable."FPERSONID") LEFT OUTER JOIN (SELECT T_BD_Person.FID FPERSONID, socEmpSocFiles.fid "SOCFILESENTRY.ID", socFilesEntry.FCompanyBase "COMPANYBASE", socFilesEntry.FSelfBase "SELFBASE", socFilesEntry.FEffectDay "EFFECTDAY" FROM T_HR_SSocEmpSocFiles socEmpSocFiles LEFT OUTER JOIN T_HR_SSocEmpSocFilesEntry socFilesEntry ON socEmpSocFiles.Fid = socFilesEntry.FBillID LEFT OUTER JOIN T_HR_SSocType ON T_HR_SSocType.Fid = socEmpSocFiles.FSocTypeID LEFT OUTER JOIN T_HR_SSocTypeItem ON T_HR_SSocTypeItem.Fid = socFilesEntry.FSocTypeItemID LEFT OUTER JOIN T_HR_SSocItem socItem ON socItem.Fid = T_HR_SSocTypeItem.FSocItemID RIGHT OUTER JOIN T_BD_Person ON T_BD_Person.Fid = socEmpSocFiles.FPersonId LEFT OUTER JOIN T_Org_Admin JoinSocOrg ON JoinSocOrg.Fid = socEmpSocFiles.FJoinSocOrgID INNER JOIN (SELECT FPersonId, max(FEffectDay) MAXEFFECTDAY, max(FCreateTime) CREATETIME FROM T_HR_SSocEmpSocFiles GROUP BY FPersonId) groupSql ON (socEmpSocFiles.FPersonID = groupSql.FPersonId AND socEmpSocFiles.FEffectDay = groupSql.maxEffectDay) WHERE "FSOCITEMID" = ''KyAwh2uhQv29aR0C9Pqh17LklYs='') entry5 ON (entry5."SOCFILESENTRY.ID" = billTable."SOCFILESENTRY.ID" AND entry5."FPERSONID" = billTable."FPERSONID") LEFT OUTER JOIN (SELECT T_BD_Person.FID FPERSONID, socEmpSocFiles.fid "SOCFILESENTRY.ID", socFilesEntry.FCompanyBase "COMPANYBASE", socFilesEntry.FSelfBase "SELFBASE", socFilesEntry.FEffectDay "EFFECTDAY" FROM T_HR_SSocEmpSocFiles socEmpSocFiles LEFT OUTER JOIN T_HR_SSocEmpSocFilesEntry socFilesEntry ON socEmpSocFiles.Fid = socFilesEntry.FBillID LEFT OUTER JOIN T_HR_SSocType ON T_HR_SSocType.Fid = socEmpSocFiles.FSocTypeID LEFT OUTER JOIN T_HR_SSocTypeItem ON T_HR_SSocTypeItem.Fid = socFilesEntry.FSocTypeItemID LEFT OUTER JOIN T_HR_SSocItem socItem ON socItem.Fid = T_HR_SSocTypeItem.FSocItemID RIGHT OUTER JOIN T_BD_Person ON T_BD_Person.Fid = socEmpSocFiles.FPersonId LEFT OUTER JOIN T_Org_Admin JoinSocOrg ON JoinSocOrg.Fid = socEmpSocFiles.FJoinSocOrgID INNER JOIN (SELECT FPersonId, max(FEffectDay) MAXEFFECTDAY, max(FCreateTime) CREATETIME FROM T_HR_SSocEmpSocFiles GROUP BY FPersonId) groupSql ON (socEmpSocFiles.FPersonID = groupSql.FPersonId AND socEmpSocFiles.FEffectDay = groupSql.maxEffectDay) WHERE "FSOCITEMID" = ''IOgAAAAAe+Gy5JWL'') entry6 ON (entry6."SOCFILESENTRY.ID" = billTable."SOCFILESENTRY.ID" AND entry6."FPERSONID" = billTable."FPERSONID") LEFT OUTER JOIN (SELECT T_BD_Person.FID FPERSONID, socEmpSocFiles.fid "SOCFILESENTRY.ID", socFilesEntry.FCompanyBase "COMPANYBASE", socFilesEntry.FSelfBase "SELFBASE", socFilesEntry.FEffectDay "EFFECTDAY" FROM T_HR_SSocEmpSocFiles socEmpSocFiles LEFT OUTER JOIN T_HR_SSocEmpSocFilesEntry socFilesEntry ON socEmpSocFiles.Fid = socFilesEntry.FBillID LEFT OUTER JOIN T_HR_SSocType ON T_HR_SSocType.Fid = socEmpSocFiles.FSocTypeID LEFT OUTER JOIN T_HR_SSocTypeItem ON T_HR_SSocTypeItem.Fid = socFilesEntry.FSocTypeItemID LEFT OUTER JOIN T_HR_SSocItem socItem ON socItem.Fid = T_HR_SSocTypeItem.FSocItemID RIGHT OUTER JOIN T_BD_Person ON T_BD_Person.Fid = socEmpSocFiles.FPersonId LEFT OUTER JOIN T_Org_Admin JoinSocOrg ON JoinSocOrg.Fid = socEmpSocFiles.FJoinSocOrgID INNER JOIN (SELECT FPersonId, max(FEffectDay) MAXEFFECTDAY, max(FCreateTime) CREATETIME FROM T_HR_SSocEmpSocFiles GROUP BY FPersonId) groupSql ON (socEmpSocFiles.FPersonID = groupSql.FPersonId AND socEmpSocFiles.FEffectDay = groupSql.maxEffectDay) WHERE "FSOCITEMID" = ''IOgAAAAAe+Ky5JWL'') entry7 ON (entry7."SOCFILESENTRY.ID" = billTable."SOCFILESENTRY.ID" AND entry7."FPERSONID" = billTable."FPERSONID")) switchTable ON switchTable."FPERSONID" = dynamicBillSql."PERSON.ID") T',@p3 output,@p4 output,@p5 output
select @p1, @p3, @p4, @p5
请问什么版本?
好几条这样的,这一条要运行接近1分钟

打开社保档案速度特别慢,跟踪数据库发现一条这个

declare @p1 intset @p1=180151123declare @p3 intset @p3=16declare @p4 intset @p4=1declare @p5 intset @p5=1exec sp_curs...
点击下载文档
分享:
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息