powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Вложенный UPDATE
5 сообщений из 5, страница 1 из 1
Вложенный UPDATE
    #32049533
Gramer guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно ли использовать внутри UPDATE'а select из той же таблицы, что апдейтим? Скажем,
UPDATE Tbl as T1 SET FIELD=0 WHERE (SELECT Count(*) FROM Tbl as T2 WHERE T2.AnotherFIELD=T1.AnotherFIELD)
(использовал alias'ы, т.к. не знаю, как это пишется на самом деле, а alias'ы здесь использовать нельзя)
...
Рейтинг: 0 / 0
Вложенный UPDATE
    #32049535
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
update Tbl1
set Field = ......
from Tbl1 T1
where exists(select 1 from Tbl2 T2 where T2.Field = T1.Field)
and ....

Ну и так далее, как хочется
...
Рейтинг: 0 / 0
Вложенный UPDATE
    #32049546
Gramer guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня нет Tbl1 и Tbl2, есть одна таблица, но ее надо обозвать по-разному, чтобы сравнивать значения в подзапросе. Напишу запрос более близкий к тому что у меня:

Таблица:
create table Tbl (Day INT, Count INT, B BIT)

insert into Tbl (Day, ID) values (1, 1)
insert into Tbl (Day, ID) values (1, 1)
insert into Tbl (Day, ID) values (1, 2)

insert into Tbl (Day, ID) values (2, 1)
insert into Tbl (Day, ID) values (2, 2)

update Tbl as T1 set B=1 where (select count(*) from Tbl as T2 where Day=1 and T2.ID=T1)=1 and Day=2

(т.е. надо сравнить внешний ID и внутренний)
суть запроса: на второй день записываем B=1 если в первый день была одна строка с данным ID'ом

результатом должно быть:
Day ID B
2 1 Null
2 2 1
...
Рейтинг: 0 / 0
Вложенный UPDATE
    #32049551
Фотография VVG_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
update Tbl set B=1
from Tbl as T1
where (select count(*) from Tbl as T2 where Day=1 and T2.ID=T1)=1 and Day=2
...
Рейтинг: 0 / 0
Вложенный UPDATE
    #32049555
Gramer guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо :) не соображаю на ночь :)
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Вложенный UPDATE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]