Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Informix [игнор отключен] [закрыт для гостей] / Сравнивание подзапросов во where / 11 сообщений из 11, страница 1 из 1
13.12.2007, 16:46
    #35008208
alf19
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнивание подзапросов во where
во where
...
Рейтинг: 0 / 0
13.12.2007, 16:48
    #35008225
onstat
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнивание подзапросов во where
alf19во where

Конкурс на лучшего телепата?
...
Рейтинг: 0 / 0
13.12.2007, 16:52
    #35008251
alf19
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнивание подзапросов во where
where
(select1 ....) = (select2....)
оба селекта возвращают одно и тоже значание 014-1082-КП
where (select1 ....) = '014-1082-КП' так рабоает
и
where (select2 ....) = '014-1082-КП' и так рабоает
а
where (select1 ....) = (select2....) или where (select1 ....) <> (select2....) возвращает false
и запрос не отбирвает нужные строки
...
Рейтинг: 0 / 0
13.12.2007, 17:08
    #35008336
alf19
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнивание подзапросов во where
при написании вопроса я случайно нажал ctrl - enter и вопрос опубликовался

вопрос такой

where
(select1 ....) = (select2....)

оба селекта возвращают одно и тоже значание '014-1082-КП'
where (select1 ....) = '014-1082-КП' так запрос отрабатывает корректно
и
where (select2 ....) = '014-1082-КП' и так запрос отрабатывает корректно

а вот если
where (select1 ....) = (select2....)
или
where (select1 ....) <> (select2....)
то это условие возвращает false
и запрос не отбирвает нужные строки
...
Рейтинг: 0 / 0
13.12.2007, 17:41
    #35008514
Журавлев Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнивание подзапросов во where
where trim(select1 ....) = trim(select2....)

за такие запросы молотком по пальцам надо
...
Рейтинг: 0 / 0
13.12.2007, 18:21
    #35008674
alf19
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнивание подзапросов во where
Журавлев Денисwhere trim(select1 ....) = trim(select2....)

за такие запросы молотком по пальцам надо

сделал

where
(SELECT trim(d1.name) from d1 where ....) = (SELECT trim(d1.name) from d1 where...)
тоже не отработал правильно (((

Если я правильно понимаю функция trim "обрезает" ...

Но я ведь проверял с конкретным занчением '014-1082-КП' :
where (select1 ....) = '014-1082-КП' так запрос отрабатывает корректно
и
where (select2 ....) = '014-1082-КП' и так запрос отрабатывает корректно
...
Рейтинг: 0 / 0
13.12.2007, 18:52
    #35008770
onstat
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнивание подзапросов во where
alf19 Журавлев Денис
where trim(select1 ....) = trim(select2....)

за такие запросы молотком по пальцам надо

сделал

where
(SELECT trim(d1.name) from d1 where ....) = (SELECT trim(d1.name) from d1 where...)
тоже не отработал правильно (((




А join использовать религия не позволяет?

SELECT ......... from d1 a, d1 b where a.name=b.name
and .......

Журавлев Денис
за такие запросы молотком по пальцам надо


Думаешь поможет?
...
Рейтинг: 0 / 0
13.12.2007, 19:22
    #35008833
alf19
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнивание подзапросов во where
onstat

А join использовать религия не позволяет?

SELECT ......... from d1 a, d1 b where a.name=b.name
and .......

Журавлев Денис
за такие запросы молотком по пальцам надо


Думаешь поможет?

to onstat
join не позволяет использовать логика запроса

to Журавлев Денис
насчёт пальцев абсолютно согласен
...
Рейтинг: 0 / 0
14.12.2007, 08:25
    #35009328
Журавлев Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнивание подзапросов во where
alf19
Но я ведь проверял с конкретным занчением '014-1082-КП' :
При сравнении с конкретным значением выполняется неявное преобразование.
...
Рейтинг: 0 / 0
14.12.2007, 08:25
    #35009329
Журавлев Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнивание подзапросов во where
alf19to onstat
join не позволяет использовать логика запроса

to Журавлев Денис
насчёт пальцев абсолютно согласен
запрос целиком покажите
...
Рейтинг: 0 / 0
18.12.2007, 17:04
    #35018349
exDB
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнивание подзапросов во where
alf19
where
(select1 ....) = (select2....)

оба селекта возвращают одно и тоже значание '014-1082-КП'
where (select1 ....) = '014-1082-КП' так запрос отрабатывает корректно
и
where (select2 ....) = '014-1082-КП' и так запрос отрабатывает корректно

а вот если
where (select1 ....) = (select2....)
или
where (select1 ....) <> (select2....)
то это условие возвращает false
и запрос не отбирвает нужные строки

А правильно ли сравнивать множества? Может, все же, попробовать переформулировать запрос?

А.
...
Рейтинг: 0 / 0
Форумы / Informix [игнор отключен] [закрыт для гостей] / Сравнивание подзапросов во where / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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