openquery дает разные результаты - PullRequest
1 голос
/ 05 августа 2009

У меня 2 похожих запроса

select * 
from openquery(powerschool, 
                'select * 
                 from TEACHERS 
                 where teachernumber is not null 
                   and schoolid=''1050'' 
                   and teacherloginid is not null  
                 order by teachernumber') 

и

SELECT * 
from openquery(powerschool, 
              'SELECT NVL(teachernumber,'''') 
               from TEACHERS 
               where teachernumber is not null 
                 and schoolid=''1050'' 
                 and teacherloginid is not null 
               order by teachernumber') 

Первый дает мне 182 строки, а второй - 83.

Что не так с запросами?

Ответы [ 2 ]

0 голосов
/ 05 августа 2009

Просто мысли ...

  • Тот же сервер? То есть связанный сервер отличается по назначению или учетным данным o вы читаете другую таблицу «TEACHERS»

  • Что дает выполнение обоих связанных операторов SQL на самом деле на связанном сервере (не локально)?

0 голосов
/ 05 августа 2009

Второй запрос никогда не будет возвращать ноль для таблицы учителя из-за NVL (), поэтому он может вернуть больше записей в зависимости от данных.

в основном, "andacherloginid is not null" никогда не попадает в цель, потому что вы заменяете нули на ""

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...