У меня возникла проблема с приведенным ниже запросом. В основном приведенный ниже запрос дает мне все элементы из таблицы ITEM_MASTER, которые расположены в местоположении «9999» из таблицы ITEM_LOCATION и имеют статус «C» снова в таблице ITEM_LOCATION. Я хочу проверить, находится ли какой-либо из этих элементов в запросе ниже в любом другом месте и имеет статус «A».SQL Query - SQL Developer
Поэтому в основном я хочу слишком перекрестная ссылка элементы из этого запроса, чтобы увидеть, если любой из них также появляются в любом другом месте, а не только 9999, и если они имеют статус «А»
SELECT IM.ITEM MIN,
IM.ITEM_DESC,
IL.ITEM MIN,
IL.LOC,
IL.STATUS
FROM ITEM_MASTER IM,ITEM_LOC IL
WHERE IM.ITEM_LEVEL = 2
AND IM.TRAN_LEVEL = 2
AND IL.STATUS = 'C'
AND IM.ITEM = IL.ITEM
AND IL.LOC = 9999;
Благодаря!
Мне сказали, чтобы не использовать JOINS и использовать Allas 'вместо –
+1. Просто две вещи: 'im2.Loc <> 9999' не требуется, если я хорошо понимаю вопрос (я считаю, что нужно проверить только stauts = 'A', но я могу ошибаться). И существо может быть в случае, когда в select ... –
Это правильный ответ и правильный способ сделать это. Вы все равно можете использовать таблицы в объединениях. Хотя @ RaphaëlAlthaus прав, вам не нужен <> 9999. –