+ -
当前位置:首页 → 问答吧 → 一个复杂的查询,帮帮忙,谢谢各位

一个复杂的查询,帮帮忙,谢谢各位

时间:2011-07-23

来源:互联网

序号 车辆 刷卡人 小组 刷卡时间 作业情况
1 a 王 1组 7月11日 17::30 开始
2 a 王 1组 7月11日 17::50 结束
3 b 李 2组 7月11日 17::40 开始
4 c 赵 1组 7月11日 17::50 开始
5 b 李 2组 7月11日 18::00 结束
6 c 赵 1组 7月11日 18::30 结束

需要列出一个表,当晚18:00-到第二天8:00,
车辆 组 修每辆车的时间(开始时间-结束时间)
a 1组 20分钟  
b 2组 20分钟
c 1组 40分钟

作者: fancy0529   发布时间: 2011-07-23

select a.车辆,a.小组,TIMEDIFF(b.刷卡时间,a.刷卡时间)
from 一个表 a,一个表 b
where a.车辆=b.车辆
and a.作业情况='开始'
and b.作业情况='结束'

作者: ACMAIN_CHM   发布时间: 2011-07-23

mysql里带时间的加减应该用date_sub()吧?在这里,如何操作呢?date_sub(b.刷卡时间, interval a.刷卡时间 date_time)????

作者: fancy0529   发布时间: 2011-07-23

一直说这里语法错误TIMEDIFF(b.刷卡时间,a.刷卡时间),请问不能这样用吗?

作者: fancy0529   发布时间: 2011-07-23


  建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
  参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
   
  1. 你的 create table xxx .. 语句
  2. 你的 insert into xxx ... 语句
  3. 结果是什么样,(并给以简单的算法描述)
  4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
   
  这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。

 

作者: ACMAIN_CHM   发布时间: 2011-07-23