powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Informix [игнор отключен] [закрыт для гостей] / Вычисление времени операции
6 сообщений из 6, страница 1 из 1
Вычисление времени операции
    #38078176
GReddyD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго вемени суток.

Перейду сразу к делу. У меня есть два столбца date1 и date2.
Date1 - это время начало операции, Date2- время окончания операции. Тип данных у них у обоих Timestamp.

Я хочу вычесть Date1 из date2 через объявление переменной и вывод на экран результата. Подскажите как это сделать.

Заранее всем спасибо за помощь! :-)
...
Рейтинг: 0 / 0
Вычисление времени операции
    #38078250
svat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GReddyD,

Чисто стратегически это выглядит так :

Date2 - Date1

... подробности же ("к черту подробности!" (с) ) изложены в соотв разделах FAQ ( http://www.sql.ru/faq/faq_topic.aspx?fid=810 и http://www.sql.ru/faq/faq_topic.aspx?fid=534 ) - изучить, доработать напильником, украсить стразочками.

ЗЫ. большое пожалуйста :)
...
Рейтинг: 0 / 0
Вычисление времени операции
    #38078526
GReddyD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот мой запрос который получился:

DEFINE GLOBAL runtime TIMESTAMP

LET Runtime = (SELECT AVG(endtl_dt - begintl_dt) FROM timelog)

SELECT COUNT(*) AS Amount,
DATE(CURRENT) AS Date
FROM timelog
WHERE tld_num = "1"
AND DATE(begintl_dt) = DATE(CURRENT)

Но ругается на первую строку: Код ошибки -201, положение SQL 42000: A syntax error has occurred.

Подскажи что написано не так? Конекчусь к БД информикс через NetBeans
...
Рейтинг: 0 / 0
Вычисление времени операции
    #38078592
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GReddyDВот мой запрос который получился:

DEFINE GLOBAL runtime TIMESTAMP

LET Runtime = (SELECT AVG(endtl_dt - begintl_dt) FROM timelog)

SELECT COUNT(*) AS Amount,
DATE(CURRENT) AS Date
FROM timelog
WHERE tld_num = "1"
AND DATE(begintl_dt) = DATE(CURRENT)

Но ругается на первую строку: Код ошибки -201, положение SQL 42000: A syntax error has occurred.

Подскажи что написано не так? Конекчусь к БД информикс через NetBeans

DEFINE и LET можно использовать только в коде stored procedure. Это не PL SQL, никаких переменных вне кода.
...
Рейтинг: 0 / 0
Вычисление времени операции
    #38078920
GReddyD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Напишите пожалуйста как должно выглядить объявление переменной
...
Рейтинг: 0 / 0
Вычисление времени операции
    #38079119
Фотография Andron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GReddyD,

В Informix нет анонимных блоков, т.е. весь код (если это не запрос а какая то логика) надо писать в процедурах или функциях.
Т.е. нельзя написать вот так и выполнить этот код:

Код: plsql
1.
2.
 define v1 int;
 let v1 = 1;



надо писать так:

Код: plsql
1.
2.
3.
4.
create procedure test()
 define v1 int;
 let v1 = 1;
end procedure;
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Informix [игнор отключен] [закрыт для гостей] / Вычисление времени операции
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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