比较难实现的SQL语句,请高手帮忙!(关于一个车辆预约系统)
以下是预约表
-----------------------
预约人 同乘人数 班次 预约时间 备注
刘洪 1 1 2007-04-09 00:00:00 NULL
刘二 1 2 2007-04-09 00:00:00 NULL
张三 0 3 2007-04-09 00:00:00 NULL
李四 0 4 2007-04-09 00:00:00 NULL
王五 1 3 2007-04-09 00:00:00 NULL
周六 1 1 2007-04-09 00:00:00 NULL
admin 1 2 2007-04-09 00:00:00 NULL
-------------------------
希望得到以下这个表
---------------------------------
预约人 同乘人数 总人数 班次 预约时间 备注
刘洪 周六 刘洪(1) 周六(1) 4 1 2007-04-09 NULL
刘二 admin 刘二(1) admin(1) 2 2 2007-04-09 NULL
张三 王五 张三(0) 王五(1) 3 3 2007-04-09 NULL
李四 李四(0) 1 4 2007-04-09 NULL
-----------------------------------
条件:按照班次分组,将预约相同班次的预约人合并到一个字段并用空格分开,同时将每个预约人
所带同乘者人数附后并用括号括起来,总人数=预约人+同乘人数。预约时间只取最近的日期相同的
日期部分,不取时间。不知道我说明白了没有,在线等!
------解决方案--------------------如果不要合并就比较简单了
group by 班次 order by 班次
关注一下
------解决方案--------------------up
------解决方案--------------------学习~~
不过想问下
刘二 admin 刘二(1) admin(1) 2 2 2007-04-09 NULL
那个总人数是2???
是不是该是4啊???按你说的
总人数=预约人+同乘人数
------解决方案--------------------这种合并还是用程序写吧,SQL语句很难实现的,比较麻烦
------解决方案--------------------字符串合并没有办法,加上函数应该可以,我写了一个测试的例子:
--建表
create table mytest
(
mname varchar(50),
num int,
part int