Задать вопрос

Где ошибка в запросе sql?

Ребята, привет!

Есть запрос к postgresql

SELECT
op.parcel_cn,
op.id,
o.area_value
FROM
objects_process AS op
JOIN
objects_copy AS o
ON
op.parcel_cn=o.parcel_cn
WHERE
op.status IS NULL

выдает No rows found.
где ошибка?
  • Вопрос задан
  • 2568 просмотров
Подписаться 4 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 4
@iamnothing
Если у вас вот так будут записи:
SELECT op.parcel_cn, op.id
FROM objects_process AS op 
WHERE op.status IS NULL

И вот так будут записи:
SELECT op.parcel_cn, op.id, o.area_value 
FROM objects_process AS op 
JOIN objects_copy AS o 
  ON op.parcel_cn = o.parcel_cn

То значит, что у вас пустое множество строк при пересечении двух условий:
ON op.parcel_cn = o.parcel_cn и
WHERE op.status IS NULL т.е. нет таких записей, которые бы удовлетворяли сразу обоим условиям
Ответ написан
Melkij
@Melkij
PostgreSQL DBA
Как ни странно, но, может быть, таких строк действительно нет?
Ответ написан
tsarevfs
@tsarevfs
C++ developer
Создайте пару табличек с 2-3 строчками для которых это точно должно работать. Если не работает - отрезайте от запроса куски пока не станет понятно что именно не так.
Ответ написан
@Vergileey
У меня нет, конечно, опыта работы с postgresql, но если посмотреть с точки зрения простого sql запроса, то может написать так:
SELECT
op.parcel_cn,
op.id,
o.area_value
FROM
objects_process  op,
objects_copy  o
WHERE
op.parcel_cn=o.parcel_cn and
op.status IS NULL

?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы