powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / left join и его странные результаты
4 сообщений из 4, страница 1 из 1
left join и его странные результаты
    #34004028
shainsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть вот такой запрос

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
select d.*, c.*, fp.serial as foreign_serial, fp.number as foreign_number, fp.issuer as foreign_issuer,
fp.issue_date as foreign_issue_date, fp.expiry as foreign_expiry,
dl.serial as driving_license_serial, dl.number as driving_license_number,
--dl.issuer as driving_license_issuer,
dl.issue_date as driving_license_issue_date,
dl.expiry_date as driving_license_expiry_date
from s_credit_details d, s_customer c left join s_driving_license dl on c.driving_license_id = dl.id, s_foreign_passport fp
where d.customer_id = c.id
and c.foreign_passport_id=fp.id
and d.id= 2 

Отрабатывает он нормально. Если же раскомментировать строку "--dl.issuer as driving_license_issuer,", по сути просто запросить значение ещё одного поля таблицы, то запрос возвращает пустой набор. Как такое может быть и как оно лечится?
...
Рейтинг: 0 / 0
left join и его странные результаты
    #34005052
Funny_Falcon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А упростить можно? и пример данных? Версия PostgreSQL какая?
Судя по уже сказанному - это в баг репорт. PostgreSQL: Support
...
Рейтинг: 0 / 0
left join и его странные результаты
    #34005183
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приведите пожалуйста описания таблиц и explain analyze обоих запросов.
...
Рейтинг: 0 / 0
left join и его странные результаты
    #34005496
4321ё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
shainsky Если же раскомментировать строку "--dl.issuer as driving_license_issuer,", по сути просто запросить значение ещё одного поля таблицы, то запрос возвращает пустой набор. Как такое может быть?ну, вжеж поскольку ничего не известно, предположим, что dl - вид, а dl.issuer есть вычислмое поле (процедура, типо) и в результате работы этой процедуры набор вью обнуляется (напр - другие поля меняют значения и не попадают в зазоры фильтра).


хотя скорее всего проблема где-то в совсем другом месте. Нужно полное описание таблиц. Описание индексов. (в файл серверной субде я бы грешил на порушенные индескы, правда - при добавлении поля в условие выборки, а не в результирующий набор).
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / left join и его странные результаты
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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