Как передать значение внутреннего запроса во внешний запрос, который будет использоваться в его запросе в 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