Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
Нужно узнать сколько секунд прошло с даты, хранящейся в поле таблицы. Вот такая конструкция не работает, возвращает 0 строк. Код: plaintext 1. С конвертацией типов тоже ничего не срослось пока, вот так опять же 0 строк: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 12:56 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
CAST работает, но толку нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 13:02 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
coder1cv8Нужно узнать сколько секунд прошло с даты, хранящейся в поле таблицы. Какие значения хранятся в том поле? Сравнивать с текущей датой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 13:19 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
coder1cv8 , например такое вот Код: plaintext 1. таки работает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 13:55 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
Странно, datediff очень толерантно относится к представлению входных дат. Код: plaintext 1. 2. Может какая-то беда в данных? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 14:00 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
krvsa, а у меня не работает :( что-то не так с этим полем, по которому сравниваем (UPDSTMP оно называется у меня) имеет тип %Date, на вид выглядит примерно так: 2009-09-01 10:49:30.0 Вообще это прилинкованная таблица из Оракла, если это чем-то поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 14:09 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
coder1cv8на вид выглядит примерно так: 2009-09-01 10:49:30.0 Прям как тиместамп... А сам пример (мой) в семплс работает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 15:22 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
krvsacoder1cv8на вид выглядит примерно так: 2009-09-01 10:49:30.0 Прям как тиместамп... А сам пример (мой) в семплс работает? Ага, Ваш пример работает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 15:33 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
coder1cv8что-то не так с этим полем, по которому сравниваем (UPDSTMP оно называется у меня) имеет тип %Date, на вид выглядит примерно так: 2009-09-01 10:49:30.0 Вообще это прилинкованная таблица из Оракла, если это чем-то поможет. Попробуйте вручную изменить тип данных в классе Cache, сгенерированном для этой таблицы, с %Date на %TimeStamp и перекомпилировать класс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 15:38 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
Turk, Перекомпилировал класс с указанием типа поля %TimeStamp Запрос Код: plaintext 1. Если просто посмотреть таблицу, то записи с датой в этом поле я так же вижу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 15:59 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
UPDSTMP смотрите в логическом представлении? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 16:22 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
что будет в Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 16:24 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
Блок А.Н.UPDSTMP смотрите в логическом представлении? Смотрел в ODBC, в логическом будет так: 2009-09-01 10:49:30 Блок А.Н.что будет в Код: plaintext будет 0 записей. Использование DATEDIFF в любом виде дает пустой результат запроса. Как сейчас заметил, такой запрос тоже пустой результат возвращает: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 16:59 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
coder1cv8будет 0 записей. Использование DATEDIFF в любом виде дает пустой результат запроса. Как сейчас заметил, такой запрос тоже пустой результат возвращает: Код: plaintext 1. Надеюсь, такой запрос: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 17:27 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
Turk Надеюсь, такой запрос: Код: plaintext 1. Да, я же говорю, что просто если UPDSTMP смотреть, то оно выводится без проблем. Что будет в UPDSTMP, я писал выше, если Logical Mode то 2009-09-01 10:49:30 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 17:38 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
Нет, все-таки погодите. 0 записей скорее всего потому, что происходит ошибка. Какой SQLCODE? Что дадут запросы: SELECT string(UPDSTMP) FROM VOUHDR select DATEDIFF('ss',string(UPDSTMP),CURRENT_TIMESTAMP) from VOUHDR ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2010, 19:08 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
Блок А.Н.Нет, все-таки погодите. 0 записей скорее всего потому, что происходит ошибка. Какой SQLCODE? Что дадут запросы: SELECT string(UPDSTMP) FROM VOUHDR select DATEDIFF('ss',string(UPDSTMP),CURRENT_TIMESTAMP) from VOUHDR Окей :) Отвечаю подробно. Первый запрос: SQLCODE: 100 Количество строк: 0 Второй запрос: SQLCODE: 100 Количество строк: 0 А вот так: [src] select UPDSTMP from VOUHDR [src] все работает на ура. # UPDSTMP 1 2009-09-01 10:49:30 2 2009-09-01 10:50:39 3 2009-09-01 11:52:32 4 2009-09-01 12:08:09 5 2009-09-01 12:10:55 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2010, 09:19 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
coder1cv8Вообще это прилинкованная таблица из Оракла, если это чем-то поможет. Вы пытаетесь использовать SQL-функции Caché в БД Oracle. При работе с прилинкованной таблицей действует синтаксис той СУБД, к которой она относится. В СУБД Oracle нет функции DATEDIFF, поэтому Ваш запрос не работает. Попробуйте поискать решение в соседней ветке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2010, 09:42 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
servit, вот как.... Спасибо ) А я-то думал это какое-то... эм... представление таблицы в Каше, судя по тому что для нее Persistent класс создается с типами Каше. А тут оказывается все по-другому. Осталось разобраться как эта задача в Oracle решается ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2010, 10:11 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
coder1cv8А я-то думал это какое-то... эм... представление таблицы в Каше, судя по тому что для нее Persistent класс создается с типами Каше. Представление внешней таблицы в Caché может быть осуществлено с помощью: 1) связывание (линкования) таблицы; 2) миграции таблицы, включая структуру и данные. Во втором случае данные хранятся непосредственно в Caché, поэтому Вы можете использовать возможности Caché SQL в полном объёме. Использование Caché SQL Шлюза ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2010, 10:43 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
servit, ага, понятно ) спасибо еще раз за разъяснения. ЗЫ: не поддается все-таки пока мне разность дат, в оракловом синтаксисе работает, но возвращает не совсем понятно что ) Код: plaintext 1. 9064 7:26:20.371200000 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2010, 10:50 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
coder1cv8в оракловом синтаксисе работает, но возвращает не совсем понятно что ) Что-то мне подсказывает что это Количество дней время9109 7:26:20.371200000 9064 7:26:20.371200000 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2010, 11:47 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
krvsa Что-то мне подсказывает что это Количество дней время9109 7:26:20.371200000 9064 7:26:20.371200000 Не ) Это кол-во секунд (то что мне нужно) + какое-то не понятное время... Код: plaintext 1. Вот такие пироги. Я бы получал нормальное время в секундах при обходе RecordSet-a (так как функции Каше у нас в этом запросе не доступны), но проблема в том, что мне нужен отбор по этой разности, т.е. к примеру, записи за последние 30 сек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2010, 12:07 |
|
||
|
Как в запросе получить разность дат?
|
|||
|---|---|---|---|
|
#18+
coder1cv8 , в любом слечае наверное нужно ораклистов теребить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2010, 12:13 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=36900227&tid=1557935]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 309ms |

| 0 / 0 |
