各位大虾,有这样一段SQL
select 今年的第几周_进场, dbo.bzrs(今年的第几周_进场) as 编制人数 from (select a.今年的第几周_进场,b.* from
(select b.今年的第几周 as 今年的第几周_进场, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.workdate=b.time_start) a
join
(select b.今年的第几周 as 今年的第几周_离职, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.dimissiondate=b.time_start) b on
a.employeeid=b.employeeid )--首先第一行 from 后面的语句是正确的,
单是连起查询时
报告的错误是
服务器: 消息 170,级别 15,状态 1,行 13
第 13 行: ')' 附近有语法错误。小弟初学,望大家指点
select 今年的第几周_进场, dbo.bzrs(今年的第几周_进场) as 编制人数 from (select a.今年的第几周_进场,b.* from
(select b.今年的第几周 as 今年的第几周_进场, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.workdate=b.time_start) a
join
(select b.今年的第几周 as 今年的第几周_离职, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.dimissiondate=b.time_start) b on
a.employeeid=b.employeeid )--首先第一行 from 后面的语句是正确的,
单是连起查询时
报告的错误是
服务器: 消息 170,级别 15,状态 1,行 13
第 13 行: ')' 附近有语法错误。小弟初学,望大家指点
(select b.今年的第几周 as 今年的第几周_进场, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.workdate=b.time_start) a
join
(select b.今年的第几周 as 今年的第几周_离职, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.dimissiondate=b.time_start) b on
a.employeeid=b.employeeid ) aa
(select b.今年的第几周 as 今年的第几周_进场, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.workdate=b.time_start) a
join
(select b.今年的第几周 as 今年的第几周_离职, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.dimissiondate=b.time_start) b on
a.employeeid=b.employeeid ) aa
select 今年的第几周_进场, dbo.bzrs(今年的第几周_进场) as 编制人数 from (select a.今年的第几周_进场,b.* from
(select b.今年的第几周 as 今年的第几周_进场, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.workdate=b.time_start) a
join
(select b.今年的第几周 as 今年的第几周_离职, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.dimissiondate=b.time_start) b )
on a.employeeid=b.employeeid
with cte as(
select b.今年的第几周 as 今年的第几周_进场, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.workdate=b.time_start
),
with ctd as(
select b.今年的第几周 as 今年的第几周_离职, a.*
from dbo.P_EmployeeTab a join a_p_worktimetab b on
a.dimissiondate=b.time_start
)
select 今年的第几周_进场, dbo.bzrs(今年的第几周_进场) as 编制人数 from
cte a join ctd b on a.employeeid=b.employeeid;
--这样写可读性好些吧