Как передать значение внутреннего запроса во внешний запрос, который будет использоваться в его запросе в sql?

Мне нужно получить запись из таблицы ASSET, но у меня есть только родительский номер ресурса, чтобы найти нужную мне запись. Есть 2 записи с одинаковым номером актива, но у одного родительский элемент заполнен значением родительского номера актива, которое у меня есть, и никто не Мне нужно получить запись о том, что родительское поле не заполнено. Я думал, что смогу получить одну запись, в которой заполнено родительское поле, получить ее assetnum, а затем использовать этот assetnum для повторного запроса к таблице, но на этот раз добавив "parent is null" и получить нужную запись, родительское поле которой пусто. Пока у меня есть:

    select assetnum from asset where assetnum in(select assetnum from asset where parent = (parentassetnum) and siteid=(siteid))and parent is null

Так что в этом запросе я надеялся вырвать этот ресурс из внутреннего запроса и использовать его в моем внешнем запросе. Этот внутренний запрос возвращает только одну запись, и я думаю, что происходит то, что мой внешний запрос сравнивается с результатами внутреннего запроса, а не используется assetnum для собственного внешнего запроса. Что я хочу сделать возможно в SQL?

Спасибо за помощь заранее. Wann

1 ответ

Мне кажется, что если вы измените "в" на знак =, это должно работать.

SELECT assetnum
ОТ актива
WHERE assetnum = (ВЫБЕРИТЬ assetnum ОТ актива WHERE parent = (parentassetnum) И siteid=(siteid))
И родитель NULL

Другие вопросы по тегам