假设有四条数据:
员工ID 出勤日期 打卡时间
江小鱼 2003-07-21 8:30
江小鱼 2003-07-21 12:30
江小鱼 2003-07-21 14:30
江小鱼 2003-07-21 17:30
怎么把它合并为一条记录,如下形式:
江小鱼 2003-07-21 8:30,12:30,14:30,17:30
并在GRIDDATA里显示出来。
员工ID 出勤日期 打卡时间
江小鱼 2003-07-21 8:30
江小鱼 2003-07-21 12:30
江小鱼 2003-07-21 14:30
江小鱼 2003-07-21 17:30
怎么把它合并为一条记录,如下形式:
江小鱼 2003-07-21 8:30,12:30,14:30,17:30
并在GRIDDATA里显示出来。
where 员工ID=江小鱼 and 出勤日期=2003-07-21
str_name:=江小鱼 ;
str_date:=2003-07-21;
str_datetime:='';
for i:=0 to table1.recordcount-1 do
begin
str_datetime:=str_datetime+table1['打卡时间']+' ';
table1.next;
end;
delete from 表
where 员工ID=江小鱼 and 出勤日期=2003-07-21
insert into 表(员工ID,出勤日期,打卡时间)
values(str_name,str_date,str_datetime);
returns varchar(2000)
as
begin
declare @str varchar(2000)
set @str=''
select @str=@str+','+rtrim(cast(打卡时间 as varcahr(20))) from 表 where 姓名=@name and 出勤日期 = @Date
set @str=right(@str,len(@str)-1)
return @str
end
go语句:
select 姓名,dbo.getstr(姓名,出勤日期) from 表 where 姓名= '江小鱼' group by 姓名
Microsoft OLE DB Provider for SQL Server 错误 '80040e31' 超时已过期 /Expert/reply.asp,行105