请帮助我,MySQL查询到在拖timestamp列之间的范围丝束搜索发布日期的记录
上午发布2个日期以搜索去进行维护,并在特定日期离开车辆,然后这些结果在时间范围内分开。 我的表看起来像这样:
Ticket VEhicle Type Model Center Depart DateIn DateOut
________________________________________________________________________________________________________________________________________________
JBN-115 D113 MOTO BIKE YBR125 254 403 2017-01-16 16:38:00 2017-01-25 08:54:00
JBN-122 S001 CAR TYT HILUX 254 410 2017-01-17 08:39:00 2017-01-17 09:39:00
JBN-123 C003 MOTO BIKE MAX100R 254 403 2017-01-16 09:50:00 2017-01-17 09:41:00
JBN-124 D313 MOTO BIKE YBR125 254 403 2017-01-16 16:38:00 2017-01-25 08:54:00
JBN-125 S002 CAR TYT HILUX 254 410 2017-01-17 12:39:00 2017-01-18 14:39:00
JBN-126 C053 MOTO BIKE MAX100R 254 403 2017-01-16 08:41:00 2017-01-31 09:41:00
JBN-127 D133 MOTO BIKE YBR125 254 403 2017-01-18 15:38:00 2017-01-25 08:54:00
JBN-128 S008 MOTO BIKE TYT HILUX 254 410 2017-01-17 13:13:00 2017-01-20 09:24:00
JBN-129 C043 MOTO BIKE MAX100R 254 403 2017-01-18 08:41:00 2017-01-31 09:41:00
JBN-122 S012 CAR TYT HILUX 254 410 2017-01-17 08:50:00 2017-01-17 19:39:00
JBN-122 S062 MOTO BIKE YBR125 254 410 2017-01-17 14:50:00
因此,如果车辆去维修的发布日期范围,它仍然没有letf维修的地方,它会显示在结果中,即使日期Out是过去发表日期。 或者如果日期为空,它仍然会显示,因为它尚未离开该位置。
所以我运行一个查询2017年1月17日和2017年1月18日
查询应查找此车,因为你在秋季标准之间取得记录:
Ticket VEhicle Type Model Center Depart DateIn DateOut
________________________________________________________________________________________________________________________________________________
JBN-122 S001 CAR TYT HILUX 254 410 2017-01-17 08:39:00 2017-01-17 09:39:00
JBN-122 S012 CAR TYT HILUX 254 410 2017-01-17 08:50:00 2017-01-17 19:39:00
JBN-125 S002 CAR TYT HILUX 254 410 2017-01-17 12:39:00 2017-01-18 14:39:00
JBN-128 S008 MOTO BIKE TYT HILUX 254 410 2017-01-17 13:13:00 2017-01-20 14:24:00
JBN-122 S062 MOTO BIKE YBR125 254 410 2017-01-17 14:50:00
然后我正在跳跃查看查询像这样的输出:
Type 8am 10am 12pm 2pm 4pm
_________________________________________________
CAR 2 1 2 2 2
MOTO BIKE 0 0 1 2 2
我已经试过这样:
select c.vtype,
(select COUNT(vtype) from Availability where (DATE_FORMAT(DateIn, '%Y-%m-%d %H:%i') < '2017-01-17 00:00' AND DATE_FORMAT(DateOut, '%Y-%m-%d %H:%i') < '2017-01-18 10:00') AND costCente = '254' AND vtype =c.vtype) as Eight,
(select COUNT(vtype) from Availability where (DATE_FORMAT(DateIn, '%Y-%m-%d %H:%i') < '2017-01-17 10:00' AND DATE_FORMAT(DateOut, '%Y-%m-%d %H:%i') < '2017-01-18 12:00') AND costCente = '254' AND vtype =c.vtype) as Ten,
(select COUNT(vtype) from Availability where (DATE_FORMAT(DateIn, '%Y-%m-%d %H:%i') < '2017-01-17 12:00' AND DATE_FORMAT(DateOut, '%Y-%m-%d %H:%i') < '2017-01-18 14:00') AND costCente = '254' AND vtype =c.vtype) as Twelve,
(select COUNT(vtype) from Availability where (DATE_FORMAT(DateIn, '%Y-%m-%d %H:%i') < '2017-01-17 14:00' AND DATE_FORMAT(DateOut, '%Y-%m-%d %H:%i') < '2017-01-18 16:00') AND costCente = '254' AND vtype =c.vtype) as Tow,
(select COUNT(vtype) from Availability where (DATE_FORMAT(DateIn, '%Y-%m-%d %H:%i') < '2017-01-17 16:00' AND DATE_FORMAT(DateOut, '%Y-%m-%d %H:%i') < '2017-01-18 19:00') AND costCente = '254' AND vtype =c.vtype) as Four
from Availability c where costCente = '254' GROUP BY vtype ORDER BY vtype DESC
你试过了什么? –
我已经尝试过上述编辑,但仍然不能正常工作 – Rhynix