Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.24;
Скачать: CL | DM;

Вниз

Вопрос по запросу (:)) SQL   Найти похожие ветки 

 
yanker   (2004-09-28 14:44) [0]

Имеется БД по суммарным пробегам автомобилей. Причем каждый день пробег пишется несколько раз. Требуется сгруппировать записи по номеру автомобиля, дате и суточному пробегу.
 SELECT
  a.numfac,
  int(a.datetime),
  MAX(a.allDistance)

 FROM length_table a
 GROUP BY a.numfac,int(a.datetime)

Этот скрипт не учитывает пробег автомобиля за предыдущие дни (т.е. в результате получаем не суточный пробег, а максимальный  пробег на текущий день). Хотелось бы учитывать максимальный пробег за предудущий день.

Спасибо...


 
Fishka   (2004-09-28 14:46) [1]

Интересно, почему MAX в запросе, а не SUM?


 
Sergey13 ©   (2004-09-28 14:53) [2]

>Хотелось бы учитывать максимальный пробег за предудущий день.
Надо передать свое желание в БД. Т.е. добавить в запрос  
where a.datetime=предудущий день


 
Vlad ©   (2004-09-28 14:54) [3]

Неясно, какой показатель пишется в базу?
Фактический пробег, т.е. каждый раз пишут число которое показывает спидометр а/м, или же дельту между одной ДатойВременем и другой?


 
yanker   (2004-09-28 15:06) [4]

в БД пишется суммарный пробег, т.е. пробег за всю жизнь автомобиля


 
Vlad ©   (2004-09-28 15:37) [5]


> yanker   (28.09.04 15:06) [4]

т.е. насколько я понял тебе нужно сгруппировать записи таким образом, чтоб в поле "пробег" получилась величина:
MAX(Пробег_за_текущий день) - MAX(пробег_за_предыдущий день)
?
Если так, то боюсь что одним запросом не получится...


 
yanker   (2004-09-28 15:59) [6]

А как нужно спросить, чтобы получилось?


 
yanker   (2004-09-28 16:02) [7]

А как спросить, чтобы получилось


 
Johnmen ©   (2004-09-28 16:06) [8]

СУБД то какая ?


 
yanker   (2004-09-28 17:32) [9]

MS Access


 
Johnmen ©   (2004-09-28 18:05) [10]

Способов несколько. Напр. типа того:

SELECT
 a.numfac,
 int(a.datetime),
 MAX(a.allDistance)-MAX(b.allDistance) as S
FROM length_table a, length_table b
WHERE a.numfac=b.numfac AND
 int(a.datetime)=int(b.datetime-1.0)
GROUP BY a.numfac,int(a.datetime)



Страницы: 1 вся ветка

Текущий архив: 2004.10.24;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.037 c
3-1096381802
LamLam
2004-09-28 18:30
2004.10.24
FireBird embedded - ну никак не хочет...


1-1097579536
Maze
2004-10-12 15:12
2004.10.24
OnDrawItem of TListView


1-1097133765
lightix
2004-10-07 11:22
2004.10.24
Создать приложение подобное "Панели MS Office"


14-1096435740
cyborg
2004-09-29 09:29
2004.10.24
Хотят ввести цензуру на ТВ


3-1096443366
NewDelpher
2004-09-29 11:36
2004.10.24
Апострофы в MS SQL





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский