Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
тип interval
|
|||
|---|---|---|---|
|
#18+
Помогите пожалуйста нам,невозможно нигде найти информацию. База Informix имеет тип данных Interval .Как нам выделить из него часы и минуты в sql-запросе или в stored-процедуре? При создании поля мы задали диапазон Hour to minute. Заранее всем спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2003, 13:48 |
|
||
|
тип interval
|
|||
|---|---|---|---|
|
#18+
В каком смысле "отделить"? Просто вывести как отдельные поля в запросе (для отображения) ? Записать в разные переменные? Иметь возможность в отдельно изменять минуты и часы? Если первое, то: Select field, field::interval hour to hour hu , ( field -field::interval hour to hour)::interval minute to minute min From table1 Если второе, то: Определив переменные (Hour, Min) соответствущих типов в DEFINE, выполнить тот же запрос: Select field, field::interval hour to hour , ( field -field::interval hour to hour)::interval minute to minute into Hour, Min From table1 Если хочется в процедуре выполнить какие-то операции с этими переменными, в действиях пользоваться таким понятием, как units : если требуется прибавить, вычесть некоторое количество минут из Min Min- 5 units minute ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2003, 16:16 |
|
||
|
тип interval
|
|||
|---|---|---|---|
|
#18+
Ton,спасибо за ответ,но конструкция ::interval выдает синтаксическую ошибку.Т.е получить отдельно часы и минуты из поля типа interval в запросе нам пока не удается.Наш запрос по твоей подсказке выглядит так: select dlit_povr,dlit_povr::interval hour to hour dlit from povr_cab dlit_povr как раз то самое поле типа interval Что мы делаем не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2003, 17:28 |
|
||
|
тип interval
|
|||
|---|---|---|---|
|
#18+
Все это из-за того, что кто-то не указал с какой версией сервера он имеет дело. Судя по всему, речь идет о 7-ке, а не о 9-ке, по этому "::interval" и не работает. Итак: select dlit_povr,Extend(dlit_povr, hour to hour) dlit from povr_cab ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2003, 18:50 |
|
||
|
тип interval
|
|||
|---|---|---|---|
|
#18+
>Daugava Боюсь, что эта функция поле типа interval не обработает. Она только datetime понимает. >Ivanna А какая, действительно, версия Информикс-сервера у вас? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2003, 09:38 |
|
||
|
тип interval
|
|||
|---|---|---|---|
|
#18+
Ребята,спасибо вам всем за сострадание.Мы уже замучились с этим полем interval.Вроде должно быть так просто и не получается. Informix у нас действительно 7-й версии.Прочитали мы про extend вот здесь : http://www.citforum.ru/database/informix/h4fu.shtml Ton прав,она используется для полей datetime.Запрос с units тоже не дает положительного результата. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2003, 11:12 |
|
||
|
тип interval
|
|||
|---|---|---|---|
|
#18+
>>Daugava Боюсь, что эта функция поле типа interval не обработает. Она только datetime понимает. ton, не надо боятся надо проверить :-). Я перед тем как писать проверил на 9-ке. Живой 7-ки у меня под рукой нет, но энциклопедий юных сурков от разных версий у меня предостаточно. Описание EXTEND в версиях 7.3 и 9.2 практически идентичны, она предназначен для datetime и date. Учитывая, что у информикса сплошь и рядом имеет место быть неявное приведение типов, она вполне подходит и для interval. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2003, 11:28 |
|
||
|
тип interval
|
|||
|---|---|---|---|
|
#18+
> Daugava Боязнь основывалась как раз на опыте . Было проверено (на 9.3 правда). К сожалению, информикс (9.3) у меня не допустил такого преобразования. Неужели у вас допустил ? Видимо, 9.2 было переходом (в ней уже появился оператор CAST(или ::) и ещё была возможность преобразования типа ). А в 9.3 от неё избавились за ненадобностью (раз появился ::). Или у нас различаются параметры настройки серверов. > Ivanna Дык у вас не отработал запрос select dlit_povr,Extend(dlit_povr, hour to hour) dlit from povr_cab ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2003, 12:11 |
|
||
|
тип interval
|
|||
|---|---|---|---|
|
#18+
как вы уже, навреное, поняли я - бывший ton. :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2003, 12:13 |
|
||
|
тип interval
|
|||
|---|---|---|---|
|
#18+
Запрос select dlit_povr,Extend(dlit_povr, hour to hour) dlit from povr_cab не отработал Ошибка: It is not possible to convert between the specified types При создании базы поле interval было создано с ограничением hour(3) to minute Точная версия informix-сервера 7.31 C4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2003, 12:25 |
|
||
|
тип interval
|
|||
|---|---|---|---|
|
#18+
Мда, я поленился :-( При обращении к пустой таблице ошибки нет. Если вставить какие-нибудь данные, "It is not possible to convert between the specified types ". В 7-ке уже есть функция SUBSTR(), так что можно вырезать часы и минуты просто из строки. create table "informix".test ( a interval hour(3) to minute ); insert into test values (interval(723:32) hour(3) to minute); insert into test values (interval(3:32) hour(3) to minute); select substr(a,1,4) HOUR from test; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2003, 13:02 |
|
||
|
тип interval
|
|||
|---|---|---|---|
|
#18+
Daugava,огромное Вам спасибо!Спасибо Ton-у!За помощь всем сапасибо. Отдельное спасибо этому форуму ! Вариант Daugava c использованием substr нам подошел. Желаем всем творческих успехов, да и себе в том числе(жаль,что сами не догадались). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2003, 13:22 |
|
||
|
|

start [/forum/topic.php?fid=44&fpage=67&tid=1609355]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
49ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
| others: | 16ms |
| total: | 175ms |

| 0 / 0 |
