Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / запрос с фильтром по дате в Cache / 11 сообщений из 11, страница 1 из 1
22.02.2011, 12:20
    #37130166
Nike59
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос с фильтром по дате в Cache
Добрый день.
Пытаюсь загрузить данные из DB Cache (М-Аптека) в таблицы базы SQL Server 2005 через пакет SSIS. Создал источник Cache - драйвер InterSystem ODBC.
В пакете Data Flow Task источник данных DataReaderSource c SqlCommand -
select DocData.ID as ID, DocData.Kpr->LastObj->ExtCode as Apteka, DocData.DateRec as DateRec, DocData.DateCreate as DateCreate, DocData.TypeTables->DocType as TypeDoc, DocData.Docs as DocId, DocData.Drugs->LastObj->ExtCode as CodeDrugs, DocData.Quantity as Quant, DocData.SumCenaZak as SummaZak, DocData.Author as AuthorDD from DocData where (DocData.Destroyed=0 AND DocData.DateRec >= '20110101' AND DocData.DateRec <= '20110131')

приемник данных - OLE DB и таблица SQL

Проблема: без условия по дате таблица выгружается (4,5 года 5,5 млн записей) - все нормально, но мне нужно не всю таблицу, а только за месяц.
Но с условием по дате ничего не выгружается! Данные за этот период есть (задавал всякие периоды) есть, в SQL-менеджере Cache я их вижу. Формат даты задавал всяческими способами - не выгружает. Что я не правильно делаю?
Параллельно вопрос: когла я пишу запрос в BIDS - я где? В смысле какой синтаксис SQL я должен использовать? MS SQL? SQL Cache?
Новичок я в этом...
Заранее спасибо, Николай

Модератор: Тема перенесена из форума "Microsoft SQL Server".
...
Рейтинг: 0 / 0
22.02.2011, 13:42
    #37130411
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос с фильтром по дате в Cache
Nike59 , возможно проблема в формате данных тех дат... Может она в хорологе, а не ГГГГММДД...
...
Рейтинг: 0 / 0
22.02.2011, 13:44
    #37130417
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос с фильтром по дате в Cache
Nike59какой синтаксис SQL я должен использовать? MS SQL? SQL Cache?
Если работают "->" - значит таки кащейский синтаксис у запросов.
...
Рейтинг: 0 / 0
22.02.2011, 13:51
    #37130431
Nike59
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос с фильтром по дате в Cache
спасло '2011-01-11', т.е. задать дату через разделитель '-'
просто '2011011' - не работает...
...
Рейтинг: 0 / 0
22.02.2011, 14:08
    #37130480
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос с фильтром по дате в Cache
Nike59 ,

Caché

MSSQL
...
Рейтинг: 0 / 0
22.02.2011, 14:24
    #37130534
Nike59
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос с фильтром по дате в Cache
спасибо!
...
Рейтинг: 0 / 0
22.02.2011, 14:40
    #37130580
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос с фильтром по дате в Cache
Nike59спасло '2011-01-11', т.е. задать дату через разделитель '-'
Значит там именно такой формат дат...
...
Рейтинг: 0 / 0
22.02.2011, 15:20
    #37130683
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос с фильтром по дате в Cache
krvsaNike59спасло '2011-01-11', т.е. задать дату через разделитель '-'
Значит там именно такой формат дат...Исходные данные .

Результаты:
Код: plaintext
1.
2.
3.
select count(*) from tdate where val<='1998-01-02'; --3
select count(*) from tdate where val<={d '1998-01-02'}; --3
select count(*) from tdate where val<=to_date('19980102','yyyymmdd'); --3
Код: plaintext
select count(*) from tdate where val<='19980102'; --Error: '19980102' is an invalid ODBC/JDBC Date value
...
Рейтинг: 0 / 0
22.02.2011, 15:46
    #37130754
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос с фильтром по дате в Cache
servit , для Кащея главное что указано у свойства

Код: plaintext
1.
2.
/// Предполагаемое завершение
Property dEnd As %Date(FORMAT =  3 );

Например если убрать формат - в запросах вместо

Код: plaintext
where val<='1998-01-02'

придётся указывать хоролог...
...
Рейтинг: 0 / 0
22.02.2011, 17:16
    #37131012
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос с фильтром по дате в Cache
krvsa ,
Цитата из документацииparameter FORMAT ;
The format specification for the data type's display value.
Запросы выше отрабатывают одинаково при любом значении FORMAT.
При вызове из ODBC/JDBC клиента действуют методы LogicalToOdbc / OdbcToLogical .

PS: попробуйте при Property val As %Date(FORMAT=7); из Портала вызвать следующий запрос для разных режимов отображения
Код: plaintext
select val from tdate where val<='1998-01-02'
...
Рейтинг: 0 / 0
22.02.2011, 22:29
    #37131426
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
запрос с фильтром по дате в Cache
servit , потренируюсь на досуге. У меня в своё время с этими датами и форматами были какие-то заморочки, от того может имнение такое сложилось.
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / запрос с фильтром по дате в Cache / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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