Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / выборка из таблиц! помогите!!!! / 10 сообщений из 10, страница 1 из 1
18.07.2005, 13:12
    #33171197
AlexandrN
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из таблиц! помогите!!!!
Люди! Хелпа! Есть ASA6. Нужно из таблицы базы сделать выборку общего времени работы станка в виде (00ч.00мин.):
value: 1- работа, 0- простой;
Поля из базы имеют вид:
Time_sig Value
01.06.2005 9:21 0
01.06.2005 9:25 1
01.06.2005 9:29 0
01.06.2005 9:29 1
01.06.2005 9:29 0
01.06.2005 9:31 1
01.06.2005 10:04 0
01.06.2005 10:05 1
01.06.2005 10:21 1
01.06.2005 10:55 0
01.06.2005 10:55 1
01.06.2005 11:19 0
01.06.2005 11:20 1
01.06.2005 11:21 0
01.06.2005 11:21 0
01.06.2005 11:23 1
01.06.2005 11:35 0
01.06.2005 11:35 1
01.06.2005 11:37 0
01.06.2005 11:39 1
01.06.2005 12:21 1
01.06.2005 12:32 0
01.06.2005 12:32 1
01.06.2005 12:32 0
01.06.2005 12:33 1
01.06.2005 12:37 0
01.06.2005 12:39 1
01.06.2005 12:41 0
01.06.2005 12:41 1

Большая просьба откликнуться! Заранее спасибо!
...
Рейтинг: 0 / 0
18.07.2005, 14:58
    #33171542
Litus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из таблиц! помогите!!!!
очень странные строки, подобные этим:
01.06.2005 10:05 1
01.06.2005 10:21 1
01.06.2005 10:55 0
01.06.2005 10:55 1
если он в 10:21 продолжил работу, то зачем там эта строка?
или в 10:55... он работал или не работал?


Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
18.07.2005, 14:59
    #33171547
Рыжий Кот
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из таблиц! помогите!!!!
автор01.06.2005 9:29 0
01.06.2005 9:29 1
01.06.2005 9:29 0

так работал или нет?
если точность не важна, посчитайте количество единичек при помощи sum()...

...
Рейтинг: 0 / 0
18.07.2005, 15:01
    #33171554
Рыжий Кот
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из таблиц! помогите!!!!
или же такой вариант:
создать курсор, бегать от записи к записи, считать разницу
DATEDIFF в милиссекундах, потом привести это дело в hh:mm
...
Рейтинг: 0 / 0
18.07.2005, 15:14
    #33171603
gardenman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из таблиц! помогите!!!!
Что, нужно находить разницу между двумя соседними записями? )))


http://www.sql.ru/forum/actualthread.aspx?tid=184869&hl=scratchpad#1552312
...
Рейтинг: 0 / 0
18.07.2005, 16:45
    #33171895
AlexandrN
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из таблиц! помогите!!!!
нужно просуммировать время состояния станка в Value=1 с начала и до конца таблицы.
...
Рейтинг: 0 / 0
18.07.2005, 17:17
    #33171998
AlexandrN
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из таблиц! помогите!!!!
сделать это нужно запросами в isql и выгрузить результат в Excel. Возможно такое?
...
Рейтинг: 0 / 0
18.07.2005, 17:55
    #33172074
Рыжий Кот
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из таблиц! помогите!!!!
не зная структуру ваших таблиц, очень трудно что-то советовать, тем более, если вы не dba в базе.
я сделал у себя тестовую табличку и два view (ASA 9.0.0)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
CREATE VIEW "DBA"."my"()
AS
    SELECT start_time = time_sig, stop_time = (select time_sig from stanok where id = main_stanok.id +  1 ),
           total_sec = DATEDIFF(second, start_time, stop_time), status
    FROM stanok AS main_stanok
    WHERE status =  1 ;

CREATE VIEW "DBA"."my2"()
AS
    SELECT 
        total_sec = SUM(total_sec),
        hour  =  TRUNCNUM(total_sec /  3600 ,  0 ),
        minute = TRUNCNUM(MOD(total_sec,  3600 ) /  60 ,  0 ),
        second = MOD(MOD(total_sec,  3600 ),  60 )
    FROM my;


выборка select * from my2 вроде как (надо тестировать) дает нужный результат
я предполагал, что в таблице имеется первичное поле автоинкремент, которое не модифицируется.
но мне кажется лучше все-таки здесь повозиться с курсором (оформить в одной функции), надежней будет
...
Рейтинг: 0 / 0
18.07.2005, 19:43
    #33172205
AlexandrN
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из таблиц! помогите!!!!
to:Рыжий кот
завтра попробую, но у меня база в .db, а структура похожая: value ("0","1")
и Time_sig (day,hour, minute,second). Необходимо считать именно время перехода value с "1" на "0"? Да и ASA6 отработает ли "FROM stanok AS main_stanok"?
...
Рейтинг: 0 / 0
19.07.2005, 06:45
    #33172467
Рыжий Кот
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
выборка из таблиц! помогите!!!!
AlexandrNto:Рыжий кот
завтра попробую, но у меня база в .db, а структура похожая: value ("0","1")
и Time_sig (day,hour, minute,second). Необходимо считать именно время перехода value с "1" на "0"? Да и ASA6 отработает ли "FROM stanok AS main_stanok"?

мне кажется, нужно считать, любое время, которое начинается с 1, например, вы привели последовательность
01.06.2005 10:05 1
01.06.2005 10:21 1
первую запись тоже необходимо считать, ведь так?

И еще вопрос: так есть у вас права dba на эту базу?
З.Ы. и еще нужно status заменить на value, я случайно не так поле назвал.
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / выборка из таблиц! помогите!!!! / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]