Я новичок в работе с sql-сервером, и сегодня я хочу установить пустое поле из моей таблицы utilizzi_oggetto с максимальным значением поля oggetto_pratica из таблицы trasco_quadri_imm; все это в то время как значение в столбце oggetto одинаково в обеих таблицах. В этом случае значение trasco_oggetti_pratica, равное нулю, станет равным 226217.
Вот моя таблица trasco_quadri_imm
OGGETTO OGGETTO_PRATICA
1429 20310
1429 20309
1429 22110
1429 22142
1429 22111
1429 22143
1429 22144
1429 176644
1429 226216
1429 226217
и моя таблица utilizzi_oggetto
OGGETTO trasco_oggetto_pratica
1429 NULL
с первой попытки я попробовал
update uo
set trasco_oggetto_pratica = max(oggetto_pratica)
from trasco_quadri_imm tqi, utilizzi_oggetto uo
where uo.oggetto = tqi.oggetto and uo.trasco_oggetto_pratica is null
но, конечно, я не могу напрямую использовать функцию max в выражении set, поэтому я изменил запрос следующим образом:
update uo
set trasco_oggetto_pratica = tqi.maxop
from utilizzi_oggetto uo JOIN
(select max(oggetto_pratica) as maxop from trasco_quadri_imm ) tqi
where uo.trasco_oggetto_pratica is null and uo.oggetto = tqi.oggetto
но выдает ошибку:
Неверное имя столбца 'oggetto'
Я также пытался поместить условие в условие on, но затем я получу ошибку синтаксиса рядом со словом on.
Я не могу понять, в чем я ошибаюсь, и заранее благодарю вас за помощь.