Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.10.24;
Скачать: [xml.tar.bz2];

Вниз

Вопрос по запросу (:)) 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.036 c
3-1096274299
VKSam
2004-09-27 12:38
2004.10.24
InterBase


1-1097412833
CoolMan
2004-10-10 16:53
2004.10.24
Чтение строки из файла и помещение её в TEdit


1-1097587817
Павел
2004-10-12 17:30
2004.10.24
Выход из цикла по нажатию кнопки


8-1091106607
DimKa
2004-07-29 17:10
2004.10.24
Метаданные Jpeg


4-1095743160
Rem
2004-09-21 09:06
2004.10.24
Текст на панельки





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский