SQL-запрос для получения сведений о поездке - PullRequest
0 голосов
/ 27 июля 2011

У меня есть таблица с такими столбцами, как StartDate, EndDate, Registration_No, Start_Odometer, End_Odometer, Stop_time, Running_Time, Idle_Time, Distance, StartOPID, EndOPID ..

StartOPID, EndOPID может иметь значения, такие как 5 или 1. Я рассматриваю поездку, когда StartOPID=5 и EndOPID=5.Транспортное средство может иметь много поездок в одну и ту же дату, но время отличается.Мне нужно написать запрос, в котором я могу получить сведения о поездке определенного транспортного средства в течение дня, в котором есть StartOPID=5 и EndOPID=5, а также мне нужно получить общее расстояние, время остановки, время простоя во время этой поездки.

Я написал запрос, но он не дал мне желаемого результата .. plz help ..

select
  Registration_No,
  StartDate,
  EndDate,
  Start_Odometer,
  End_Odometer,
  sum(Total_Trip_Time) as Total_Trip_Time,
  sum(Idle_Time)       as Idle_Time,
  sum(Stop_Time)       as Stop_Time,
  sum(Running_Time)    as Running_Time,
  sum(Distance)        as Distance
from dbo.Trip_Summary
where System_Id       = ?
  and Client_Id       = ?
  and Registration_No = ?
  and StartDate between ? and ?
  and((StartOPID=5 and EndOPID=1) or (StartOPID=1 and EndOPID=5))
group by StartDate, Registration_No, EndDate, Start_Odometer, End_Odometer 
order by StartDate, Registration_No

1 Ответ

0 голосов
/ 13 августа 2011

По моему мнению, вы можете удалить Start_Odometer и End_Odometer из предложения group by.Я предполагаю, что каждая поездка будет иметь разные start_odometer и end_odometer.Если это так, вы не получите общее время поездки и т. Д. За транспортное средство в день.Вы получите общее время поездки за поездку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...