Я относительно новичок в SQL и уже почти неделю ищу решение, и мне интересно, может ли какой-нибудь эксперт здесь дать мне какой-нибудь совет, пожалуйста:
Для начала я использую SQL инструмент управления сервером 2018 для моей работы. У меня есть две таблицы X и Y, таблица X содержит идентификатор столбца, A, B, C ... и таблица Y содержит идентификатор столбца, Ax, Ay, Bx, By, Cx, Cy et c.
Мне нужно обновить таблицу X, столбец A = Ax + Ay, если Ax> Ay, или A = Ay + Ax, если Ax <= Ay, поэтому значение в столбце A будет AxAy или AyAx. </p>
То же со столбцом B C et c.
Я пытаюсь использовать функцию объявить, но она выдает сообщение об ошибке, в котором подзапрос возвратил более 1 значения, я понимаю, что это, вероятно, потому что запросы набора возвращают несколько строк данных Но как лучше это сделать?
declare @column varchar (20), @x varchar (20), @y varchar(20)
set @column=(select A from TableX);
set @x=(select Ax from TableY)
set @y=(select Ay from TableY)
update TableX
set @column=(@y+@x)
from TableX
inner join TableY
on TableX.ID=TableY.ID
where @x <= @y
Пожалуйста, не могли бы вы помочь?
Большое спасибо заранее.