救助,以下SQL怎么写

来源:百度知道 编辑:UC知道 时间:2024/05/16 12:29:30
数据库

姓名 卡号 打卡时间

张三 1 2007-01-01 09:30
张三 1 2007-01-01 18:30
张三 1 2007-01-02 08:30
张三 1 2007-01-02 17:30

要求生成以下
报表样式

姓名 卡号 2007-01-01 2007-01-02 ....... 2007-01-30
张三 1 09:30 18:30 08:30 17:30

怎么通过SQL查询实现呢。
我想问的是,直接通过 sql的查询语句就能生成出所需要的结果,在不建表的情况下怎么实现

我知道,首先你要建一个表如daka,
create table daka(name varchar2(10) primary key , num varchar2(10) not null, time varchar2(20), );
然后插入数据
insert into daka values('闫成','1','2007-01-01 09:30' );

insert into daka values('张三','2','2007-01-01 18:30
');

insert into daka values('李四','3','2007-01-02 17:30 ');

这样做违反数据库存在的意义...

楼主的意思是列转行,以前我看到过50分啊100分的就是这类列转行,都没有解决,关键是用1条SQL 是写不出来的,写个存储过程什么都搞定了

和不把打卡时间分开呢
日期 时间

麻烦