这个sql语句怎样都看不懂啊

jianshao810 2017-05-11 12:12:14

select distinct equ.OrgId, emp.EmpId, equ.EquID, A.SendOrderId, A.RegCode, A.BackupId, A.OrderTypeId, A.EquCode, A.ExecResultId,
A.ExecCount,A.ExecParams, cast(substring(a.Data,1,19) as DateTime) as ExecBeginDate, cast(substring(a.Data,20,19) as DateTime) as ExecEndDate,
Convert(Varchar(19),GetDate(),120) as LastDate, 1 as LastModified
into Tmp20170511105629729 from Openxml(@tmpMyDoc,'/U/G',2)
with (SendOrderID int 'SO', RegCode int 'F', BackupId int 'B', OrderTypeId int 'O', Data varchar(1000) 'D', EquCode int 'E', ExecResultId int 'S', ExecParams int 'P', ExecCount int 'C') a
inner join
equ_EquList equ on a.EquCode = equ.EquCode
left join sys_Emp emp on emp.RegCode = a.RegCode and emp.OrgID = equ.OrgID
where a.ExecResultId <> -4 and a.ExecResultId <> -7


with 在这里是什么用法?
整个语句的具体作用是啥?
...全文
285 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
二月十六 2017-05-11
  • 打赏
  • 举报
回复
主要就是把@tmpMyDoc这个里边的数据读取出来,并当做一个临时表来用
二月十六 2017-05-11
  • 打赏
  • 举报
回复
jianshao810 2017-05-11
  • 打赏
  • 举报
回复
大神就是多啊
0与1之间 2017-05-11
  • 打赏
  • 举报
回复
子查询部分,为了定义一个SQL片断,你可以将它看成临时表
逍遥清风_Frank 2017-05-11
  • 打赏
  • 举报
回复
临时表的作用
  • 打赏
  • 举报
回复
你把 with (SendOrderID int 'SO', RegCode int 'F', BackupId int 'B', OrderTypeId int 'O', Data varchar(1000) 'D', EquCode int 'E', ExecResultId int 'S', ExecParams int 'P', ExecCount int 'C') a 放在最上面 就能理解了 就是临时表的作用。 放在中间好像是 oracle的用法 。

22,302

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧