Синтаксис внешнего соединения Oracle
83 просмотра
1 ответ
У меня есть запрос, который выглядит так:
select *
from find fsc,
let lf,
cust cus,
STRIKE ist
WHERE fsc.id = lf.id
AND ist.ID_old = fsc.ID_old
AND lf.cust_id = cus.cust_id(+)
Я знаю (+) старый синтаксис для объединения, но я не уверен, что он на самом деле делает с этим запросом. Может ли кто-нибудь объяснить это и показать этот запрос без (+) в операторе where, используя более современный синтаксис объединения?
Автор: SJR59 Источник Размещён: 12.11.2019 09:42Ответы (1)
1 плюс
Решение
Я верю, что вы хотите этого:
select *
from find fsc join
let lf
on fsc.id = lf.id join
STRIKE ist
on ist.ID_old = fsc.ID_old left join
cust cus
on lf.cust_id = cus.cust_id;
Честно говоря, внешнее соединение, вероятно, не является необходимым. Почему бы lf
это cust_id
не является действительным? Единственная разумная возможность - это значение NULL
.
Вопросы из категории :
- sql Проверить наличие изменений в таблице SQL Server?
- sql Обменять уникальные индексированные значения столбцов в базе данных
- sql Как работает индексация базы данных?
- sql Как индексировать столбец базы данных
- sql Как разбить строку, чтобы я мог получить доступ к элементу x?
- sql Удалить все таблицы, имена которых начинаются с определенной строки
- oracle Как выбрать n-ую строку в таблице базы данных SQL?
- oracle Лучший способ инкапсулировать сложную логику курсора Oracle PL / SQL в виде представления?
- oracle Лучший способ сделать многострочную вставку в Oracle?
- oracle В какую таблицу / представление вы запрашиваете выбор всех имен таблиц в схеме в Oracle?
- oracle Как решить ORA-011033: инициализация или завершение работы ORACLE
- oracle Как импортировать дамп оракула в другое табличное пространство
- outer-join What is the difference between "INNER JOIN" and "OUTER JOIN"?
- outer-join Оператор присоединения Oracle
- outer-join LEFT JOIN против LEFT OUTER JOIN в SQL Server
- outer-join LINQ to SQL - левое внешнее соединение с несколькими условиями соединения
- outer-join Оператор Oracle ((+))
- outer-join How to do a FULL OUTER JOIN in MySQL?