Мне было сложно сформулировать вопрос. Но я лучше опишу его Технически здесь.Зацикливание результата SQL QUERY из таблицы Temp и обновление другой таблицы на основе результатов SQL QUERY
Я хочу, чтобы обновить скажу пользовательские таблицы, которая имеет следующий вид:
--------------------------------------------------------------
UserID ROLE_NAME VALUE
--------------------------------------------------------------
001 VALUE_Q xx
002 VALUE_W xx
003 VALUE_Q xx
--------------------------------------------------------------
и любит Id, связанные с пользователем многих ко многим в seprate таблице как этот
--------------------------------------------------------------
LikeId Likes VALUE
--------------------------------------------------------------
001 Code xx
002 Fun xx
003 Eat xx
--------------------------------------------------------------
и, другую таблица который имеет отношение к таблице пользователей от многих до многих, имеет следующую информацию. Let Say UserToLikeingTable
UserToLikingID UserId LikeId
--------------------------------------------------------------
01 001 001
02 002 001
03 002 002
--------------------------------------------------------------
А, вот еще один стол, который держит UserId, непосредственно из UserTable
--------------------------------------------------------------
TESTTABLEID USER_ID VALUE
--------------------------------------------------------------
001 001 100
002 002 220
003 003 400
004 002 231
--------------------------------------------------------------
И что я хочу, первый список из Пользователя Дублированный, которые разделяют один и тот же вкус, и я сделал это в # TempTable, как Follow
--------------------------------------------------------------
LikeID UserId VALUE
--------------------------------------------------------------
001 001 100
001 002 200
002 003 400
002 004 500
003 005 211
003 005 210
--------------------------------------------------------------
теперь приходит мой вопрос ...
Я хочу, чтобы обновить все пользовательские, которые разделяют один и тот же LikeID
из вышеизложенного #TempTable
результат в TESTTABLE как Follow: My End Результат shoudl be like: Обновление UserId с LikeID для всех LikeID в предыдущем результате.
TESTTABLEID USER_ID VALUE
--------------------------------------------------------------
001 001 100
002 001 220
003 002 400
004 002 500
--------------------------------------------------------------
Любая помощь очень много я appreacted? Как работать в цикле для обнуления значений?
Hint
:
Update TestTable set UserId = #Temptable.LikeId
FROM #Temptable
where #Temptable.UserId = TestTable.UserId
А что, если я должен обновить и удалить дубликаты UserId
первый и sum
значение Тир и хранить один репрезентативный LikeId для них?
вместо замены всего userId
на LikeId
вы суммируете стоимость и заменяете один LikeId?