CREATE FUNCTION ReturnNum(@BeginData varchar(10),@EndData varchar(10))
RETURNS
@RESULT TABLE
{
序号 smallint
单位名称 varchar(32),
稿件总数 int
}
As
BEGIN
declare @Num intselect @Num = Count(上传单位) from 宣传稿件 where Dept=1 and @BeginData<=时间<@EndData
insert INTO @Result(序号,单位名称,稿件总数) values(1,'政工办'@Num)select @Num = Count(上传单位) from 宣传稿件 where Dept =2 and @BeginData<=时间<@EndData
INSERT INTO @Result(序号,单位名称,稿件总数) values(2,'工会',@Num)
select @Num = Count(上传单位) from 宣传稿件 where Dept =3 and @BeginData<=时间<@EndData
INSERT INTO @Result(序号,单位名称,稿件总数) values(3,'共青团',@Num)
....................
select @Num = Count(上传单位) from 宣传稿件 where Dept =14 and @BeginData<=时间<@EndData
INSERT INTO @Result(序号,单位名称,稿件总数) values(14,'培训队',@Num)
RETURN
END
RETURNS
@RESULT TABLE
{
序号 smallint
单位名称 varchar(32),
稿件总数 int
}
As
BEGIN
declare @Num intselect @Num = Count(上传单位) from 宣传稿件 where Dept=1 and @BeginData<=时间<@EndData
insert INTO @Result(序号,单位名称,稿件总数) values(1,'政工办'@Num)select @Num = Count(上传单位) from 宣传稿件 where Dept =2 and @BeginData<=时间<@EndData
INSERT INTO @Result(序号,单位名称,稿件总数) values(2,'工会',@Num)
select @Num = Count(上传单位) from 宣传稿件 where Dept =3 and @BeginData<=时间<@EndData
INSERT INTO @Result(序号,单位名称,稿件总数) values(3,'共青团',@Num)
....................
select @Num = Count(上传单位) from 宣传稿件 where Dept =14 and @BeginData<=时间<@EndData
INSERT INTO @Result(序号,单位名称,稿件总数) values(14,'培训队',@Num)
RETURN
END
还是不对呢?就是因为insert要小写吗???在执行时,还是出现:
[Microsoft][ODBC SQL Server Driver]Syntax error or access violation
RETURNS
@RESULT TABLE
(
序号 smallint,
单位名称 varchar(32),
稿件总数 int
)
As
BEGIN
declare @Num intselect @Num = Count(上传单位) from 宣传稿件 where Dept=1 and @BeginData<=时间 and 时间<@EndDatainsert INTO @Result(序号,单位名称,稿件总数) values(1,'政工办',@Num)select @Num = Count(上传单位) from 宣传稿件 where Dept =2 and @BeginData<=时间 and 时间<@EndData
INSERT INTO @Result(序号,单位名称,稿件总数) values(2,'工会',@Num)
select @Num = Count(上传单位) from 宣传稿件 where Dept =3 and @BeginData<=时间 and 时间<@EndData
INSERT INTO @Result(序号,单位名称,稿件总数) values(3,'共青团',@Num)
--....................
select @Num = Count(上传单位) from 宣传稿件 where Dept =14 and @BeginData<=时间 and 时间<@EndData
INSERT INTO @Result(序号,单位名称,稿件总数) values(14,'培训队',@Num)
RETURN
END
******************************
有这种用法的吗?@result能够作为表对象直接进入语句吗?
可是,这次就是不行了.Count(..)原来用的Max(..)都是可以的,不知道现在是什么问题,不行呢?