因为要报表数据, 我的做法是用insert into 插入数据 但是每次都是提示锁死,但是我那张表只是给领导看的 不存在什么更新
而且在本地的数据库上面 可以执行,放到真实的数据上面就是被锁死
看到有的说是因为sql语句优化问题
insert into APP_CreditReport(SelectData, QianDao, WxZP, App, ADActive, Tj, Tx, Active, XR, QianDaoCount, WxZPCount, AppCount, ADActiveCount, TjCount, TxCount, ActiveCount, XRCount) values(
CONVERT(varchar(100), GETDATE()-1, 23),
(select SUM(Credit) from App_UserCredit where Memo='APPQD' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select sum(Credit) from App_UserCredit where Memo='WXZP' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select sum(Credit) from App_UserCredit where Memo='app' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select sum(Credit) from App_UserCredit where Memo='ADActivity' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select sum(Credit) from App_UserCredit where Memo='APPHYTJZC' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select sum(Credit) from App_UserCredit where Memo='APPHYTJTX' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select case when sum(Credit) IS null then 0 else SUM(Credit) end from App_UserCredit where Memo='Activity' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select sum(Credit) from App_UserCredit where substring(Memo,1,2)='XR' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select COUNT(distinct APPUserName) from App_UserCredit where Memo='APPQD' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select COUNT(distinct APPUserName) from App_UserCredit where Memo='WXZP' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select COUNT(distinct APPUserName) from App_UserCredit where Memo='app' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select COUNT(distinct APPUserName) from App_UserCredit where Memo='ADActivity' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select COUNT(distinct APPUserName) from App_UserCredit where Memo='APPHYTJZC' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select COUNT(distinct APPUserName) from App_UserCredit where Memo='APPHYTJTX' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select COUNT(distinct APPUserName) from App_UserCredit where Memo='Activity' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0),
(select COUNT(distinct APPUserName) from App_UserCredit where Memo='XRTJ' and DATEDIFF(DAY,OPdatetime,GETDATE()-1)=0)
)
求大神帮忙 刚刚工作 不太会优化 sql语句
------解决思路----------------------