powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Запрос странно себя ведет
13 сообщений из 13, страница 1 из 1
Запрос странно себя ведет
    #32484720
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
SELECT distinct Calc.*
FROM Bill_charge RIGHT JOIN Calc ON Bill_charge.OperID_2 = Calc.OperID

Этот запрос возвращает 1100 записей

Код: plaintext
1.
2.
SELECT distinct Calc.*
FROM Bill_charge RIGHT JOIN Calc ON Bill_charge.OperID_2 = Calc.OperID
where Bill_charge.OperID_2 = Calc.OperID

А этот 836.
Почему так получается?
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484737
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому-что в первом запросе нет where, а во втором есть :)
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484739
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А посмотри на какую-нибудь запись из тех, которые не вернулись.
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484740
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот если бы ты делал INNER JOIN, то было бы странно - а так все ястно
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484742
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
SELECT distinct Calc.*
FROM Bill_charge RIGHT JOIN Calc ON Bill_charge.OperID_2 = Calc.OperID
where Bill_charge.OperID_2 Is Null


Сколько записей?

Сложи с теми 836

Сколько в сумме получилось?
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484745
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Замени RIGHT JOIN на INNER JOIN и всё будет одинаково ;)
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484755
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
paparome
А ты попробуй посмотреть не только на операторы...

Владимир Саныч
Только что этим и занимался :)
Интересное дело.
Первый запрос переделал так
Код: plaintext
1.
SELECT DISTINCT Calc.*, Bill_charge.OperID_2
FROM Bill_charge RIGHT JOIN Calc ON Bill_charge.OperID_2 = Calc.OperID;

записи, которые не отображаются во втором - это записи, у которых, НАПРИМЕР, calc.operid = 345 (это пример), а Bill_charge.OperID_2 = null (а это у всех соответствующих записей). При чем в таблице у этих записей Bill_charge.OperID_2 = 0
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484757
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
paparome
ну да NULL
Только вот в таблице это 0
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484764
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 VV

А что надо еще посмотреть?
Если кроме операторов нам ничего не дано?
У меня же нет твоих данных :)

------------------------
И еще Null не 0
Null даже не равно Null
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484766
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты выбираешь ВСЕ записи из Calc и только те записи из таблицы Bill_charge у которых OperID_2 равен OperID из таблицы Calc.
И поэтому у тебя Bill_charge.OperID_2 = null в некоторых записях, так как нет соответствующего значения Calc.OperID
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484776
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все! Сообразил :)
Спасибо
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484777
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пора кончать рабочий день
...
Рейтинг: 0 / 0
Запрос странно себя ведет
    #32484781
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cемён Семёныч ;)
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Запрос странно себя ведет
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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