Форум: "Базы";
Текущий архив: 2003.01.16;
Скачать: [xml.tar.bz2];
Внизкак найти время? Найти похожие ветки
← →
silenser (2002-12-19 14:51) [0]есть база с полями
таб № вход/выход | дата/время
4444 | вход | 13.12.2002 6:59
4444 | выход | 13.12.2002 12:51
4444 | вход | 13.12.2002 13:59
4444 | выход | 13.12.2002 16:59
5555 | вход | 13.12.2002 6:59
5555 | выход | 13.12.2002 17:02
6666 | вход | 13.12.2002 7:02
8888 | вход | 12.12.2002 17:02
8888 | выход | 13.12.2002 6:59
5555 | вход | 13.12.2002 6:59
5555 | выход | 13.12.2002 17:02
как посчитать сколько времени он пробыл на предприятии???
← →
Johnmen (2002-12-19 14:54) [1]Написать программу !
← →
Prooksius (2002-12-19 14:55) [2]Опять телепатов ищут... Телепаты, АУ!! :)))
Локальная база? IMHO, пробежаться по dataset и посчитать
SQL-база? ХП и также
← →
Prooksius (2002-12-19 14:56) [3]
> сколько времени он пробыл на предприятии
А кто это? :)))))))
← →
silenser (2002-12-19 14:58) [4]база локальная, вопрос как как вывести разницу времени от входа к выходу
← →
silenser (2002-12-19 14:59) [5]по каждому табельному №
← →
Prooksius (2002-12-19 15:12) [6]Надеюсь, не такого, типа сначала один вошел, потом он же опять вошел? Или сначала вышел, а потом вошел? :))))
var
TabNo: integer;
DateTime: TDateTime;
begin
Query.SQL := "select TabNo, InOut, DateTime from Table1 order by TabNo, DateTime"
Query.Open;
while not Query.EOF do begin
// ну а здесь подумай сам, многое зависит от конкретной ситуации
end;
end;
← →
Johnmen (2002-12-19 15:36) [7]Должен заметить, что задача не совсем тривиальная, т.к. надо учесть :
1) есть запись прихода и нет записи ухода
2) есть запись ухода и нет записи прихода
3) время записи ухода более раннее времени прихода
и самое главное
4) какой записи прихода соответствует какая запись ухода ?
Резюме: ПОЛНОСТЬ пересмотреть структуру БД ! Нормализовать !
И вот тогда вопросов не будет...:)))
← →
Подскажите (2002-12-19 15:57) [8]Я даже знаю откуда.Гребанный Парсек наверное ковыряют.Вот там только первая нормальная форма присутсвует.
4.Пункт-записи по порядку поэтому можно догадться что к чему.
← →
Johnmen (2002-12-19 16:25) [9]>Подскажите (19.12.02 15:57)
>4.Пункт-записи по порядку
По какому такому порядку ? Что есть мера/признак порядка ?
← →
KoluChi (2002-12-19 16:53) [10]Запрос в данном случае, по-моему, не поможет.
Единственный вариант здесь, как предложил Prooksius © (19.12.02 15:12).
Логичнее все-таки было бы хранить информацию в виде:
таб № | дата/время входа | дата/время выхода |
← →
sniknik (2002-12-19 17:35) [11]зря напали на человека запрос то несложный получается
SELECT First(Tab) AS TabNo, Format(SUM(IIF(INOUT="вход", -Dat, Dat)) ,"h:m:s") AS [Time] FROM JOBERSTIME GROUP BY TAB
структура
CREATE TABLE JobersTime (Id INT IDENTITY(1,1),Tab int, InOut char(10), Dat DateTime)
а вот на каком SQL пусть догадывается, ну и естественно здесь простейшее, если работник провел на заводе века то это правильно, так ему и надо.
← →
KoluChi (2002-12-19 17:48) [12]>sniknik © (19.12.02 17:35)
Вариант, конечно, но все недостатки остались (Johnmen © (19.12.02 15:36))
Но последнее слово все-таки за silenser.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.01.16;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.011 c