Выражение не булева типа, указанное в контексте, где ожидается условие, около ')'. ошибка в SQL - PullRequest
0 голосов
/ 31 марта 2020

Мне нужно найти совпадающий идентификатор из двух таблиц (клиент и активность) и обновить данные из столбца (clientid) в клиенте таблицы в тот же столбец (идентификатор) другой таблицы (активность):

update activity
set a.clientid = r.clientid 
where (select r.clientid, r.id 
       from request r 
       where exists(select a.activityid from activity a where (a.id = r.id))

Выдает исключение

Выражение не булева типа, указанное в контексте, где ожидается условие, около ')'

Ответы [ 2 ]

1 голос
/ 31 марта 2020

Трудно быть уверенным без выборочных данных, но похоже, что вы ищете

UPDATE activity a
JOIN request r ON r.id = a.id
SET a.clientid = r.clientid
0 голосов
/ 31 марта 2020

Я думаю, вы хотите обновить с join. На SQL сервере это выглядит так:

update a
    set clientid = r.clientid 
from activity a join
     request r
     on a.id = r.id;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...