Oracle не возвращает все строки

Я создал простое приложение для получения данных из Oracle. Приложение написано на Lazarus и использует ZeosLib и клиент Oracle (oci.dll) для подключения к серверу. Администратор Oracle подготовил мне View для получения моих данных. Я не знаю, как это построить. Когда я запускаю скрипт с использованием поля IDWYDZ, возвращается около 200 строк (не все), когда я закомментирую поле IDWYDZ или когда я заменю его пустым полем, т.е. '' как IDWYDZ, тогда я получаю все 500 строк. Почему включение или исключение столбца влияет на количество возвращаемых строк?

SELECT
    SKROT as IDPROD
    , substr( REPLACE( LTRIM(RTRIM(CAST(NAZWA AS NVARCHAR2(100)))), '''', '`'), 1, 49) as NAZPROD
    , substr( REPLACE( LTRIM(RTRIM(CAST(OPIS1 AS NVARCHAR2(255)))), '''', '`'), 1, 49) as OPIS1
    , substr( REPLACE( LTRIM(RTRIM(CAST(OPIS2 AS NVARCHAR2(255)))), '''', '`'), 1, 49) as OPIS2
    , substr( REPLACE( LTRIM(RTRIM(CAST(PREFIX AS NVARCHAR2(255)))), '''', '`'), 1, 49) as OPIS3
    , substr( LTRIM(RTRIM(CAST(OPIS1 AS NVARCHAR2(100)))), 1, 30) as IDGRUPY
    , SUBSTR(JM,1, 10) AS JM
    , CENA_SPRZ AS CENA
    , EAN AS EAN13
    , 'R' as TYPBOM
    , case when SKROT<'140000' then 'M' else 'K' end as TYPPROD
    --, FD_DZIAL AS IDWYDZ
FROM
    ACME.EXPORT_VIEW_KAS
WHERE
    DATA_MODYF>=(CURRENT_DATE-7) AND
    LENGTH(SKROT)>0
order by 
    IDPROD

0 ответов

Другие вопросы по тегам