У меня плохо нормированный набор таблиц, и я пытаюсь исправить эту проблему. БД MS SQL 2005.Неверный синтаксис рядом с ключевым словом «select»
Таблица1 имеет id
поле (идентификатор записи), A mainID
поле (лицо ID) и поле (sequence
и Int, который определяет порядок сортировки)
Table2 имеет свой собственный id
поле и копия идентификатора для первой записи лицом (sequence
= 1).
Я добавил новое поле в table2 call table2_id, и я хотел бы заполнить это поле идентификатором из таблицы2, чтобы я мог покончить с table1.mainID
. table2 имеет только запись для одной из записей для каждого человека, а mainId
- идентификатор, где table1.sequence = 1
.
Это запрос на обновлении, я думал, что буду делать работу, я получаю ошибку
update table1 as a
set regInfoID = (select b.id
from table2 as b
where b.ref1 = (select c.id
from table1 as c
where c.mainID = a.mainID
and sequence = 1))
Я считаю, что я на правильном пути, так как ее следующий запрос отлично работает
select regInfoID = (select b.id
from table2 as b
where b.ref1 = (select c.id
from table1 as c
where c.mainID = a.mainID
and sequence = 1)), a.*
from table1 as a
Какое сообщение об ошибке? –
MS SQL 2005 и сообщение об ошибке: «Msg 156, Level 15, State 1, Line 2 Неверный синтаксис рядом с ключевым словом« select ».» –