Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 оьновления таблицы  [new]
yaxta
Member

Откуда: азербайджан,баку
Сообщений: 518
привет друзьям

У меня есть одна проблема, обновление таблицы

есть две таблицы

declare @t1 table
(id int not null identity(1,1),
 shesab int null,
 phone int null)
 
 insert into @t1
 select 54000,null
 union all
 select 55000,null
 union all
 select 56000,null
select*from @t1

declare @t2 table
(id int not null identity(1,1),
 shesab int null,
 phone int null)
 insert into @t2
 select 54000,300
 union all
 select 54000,500
 union all
 select 54000,600
  union all
 select 55000,600
  union all
 select 55000,800
  union all
 select 56000,600
   union all
 select 56000,100
   union all
 select 56000,900
select*from @t2


(строк обработано: 3)
id          shesab      phone
----------- ----------- -----------
1           54000       NULL
2           55000       NULL
3           56000       NULL

(строк обработано: 3)

(строк обработано: 8)

id          shesab      phone
----------- ----------- -----------
1           54000       300
2           54000       500
3           54000       600
4           55000       600
5           55000       800
6           56000       600
7           56000       100
8           56000       900

(строк обработано: 8)



Проблема сдесь это

мне нужно обновить столбец phone @ t1 таблицы, где @ t1.shesab = @ t2.shesab

но каждый shesab в @t1 есть 2-3 phone в @ t2 таблицы мне нужно также один телефон от @ t2 таблицы



например нужно привести таблицу из обновлений


id shesab phone
----------- ----------- -----------
1 54000 500
2 55000 800
3 56000 900
11 фев 15, 11:03    [17248576]     Ответить | Цитировать Сообщить модератору
 Re: оьновления таблицы  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 20585
yaxta
но каждый shesab в @t1 есть 2-3 phone в @ t2 таблицы мне нужно также один телефон от @ t2 таблицы
И по какому же критерию нужно выбрать один из 2-3 имеющихся?
11 фев 15, 11:12    [17248640]     Ответить | Цитировать Сообщить модератору
 Re: оьновления таблицы  [new]
yaxta
Member

Откуда: азербайджан,баку
Сообщений: 518
Akina
yaxta
но каждый shesab в @t1 есть 2-3 phone в @ t2 таблицы мне нужно также один телефон от @ t2 таблицы
И по какому же критерию нужно выбрать один из 2-3 имеющихся?




критерии не нужн сдес

просто любом из phone from @t2 where shesab=@t1.shesab
11 фев 15, 11:15    [17248667]     Ответить | Цитировать Сообщить модератору
 Re: оьновления таблицы  [new]
Maxx_UA
Guest
yaxta,

может все таки начнем читать хепл ?UPDATE
11 фев 15, 11:17    [17248686]     Ответить | Цитировать Сообщить модератору
 Re: оьновления таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104760
Ну так и напишите select, в котором "критерии не нужн сдес.просто любом из phone from @t2 where shesab=@t1.shesab"
11 фев 15, 11:18    [17248694]     Ответить | Цитировать Сообщить модератору
 Re: оьновления таблицы  [new]
yaxta
Member

Откуда: азербайджан,баку
Сообщений: 518
Glory
Ну так и напишите select, в котором "критерии не нужн сдес.просто любом из phone from @t2 where shesab=@t1.shesab"



create  table #t1
(id int not null identity(1,1),
 shesab int null,
 phone int null)
 
 insert into #t1
 select 54000,null
 union all
 select 55000,null
 union all
 select 56000,null



create  table #t2
(id int not null identity(1,1),
 shesab int null,
 phone int null)
 insert into #t2
 select 54000,300
 union all
 select 54000,500
 union all
 select 54000,600
  union all
 select 55000,600
  union all
 select 55000,800
  union all
 select 56000,600
   union all
 select 56000,100
   union all
 select 56000,900


update #t1
set phone=(select phone from #t2 where #t2.shesab=#t1.shesab)





Сообщение 512, уровень 16, состояние 1, строка 1
Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.
The statement has been terminated.
11 фев 15, 11:36    [17248828]     Ответить | Цитировать Сообщить модератору
 Re: оьновления таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104760
yaxta
Subquery returned more than 1 value.

И что непонятно из этого сообщения ?
11 фев 15, 11:38    [17248840]     Ответить | Цитировать Сообщить модератору
 Re: оьновления таблицы  [new]
yaxta
Member

Откуда: азербайджан,баку
Сообщений: 518
Glory
yaxta
Subquery returned more than 1 value.

И что непонятно из этого сообщения ?



да знаю

изменил select

на

select top 1 phone


и смотрел что сервер обновляет первые phone из #t2


но мне интересно что на реалном ест 1000 shesab и 5000 phone

ето не может создат что либо проблема после обновления таблицы?
11 фев 15, 11:45    [17248897]     Ответить | Цитировать Сообщить модератору
 Re: оьновления таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104760
yaxta
но мне интересно что на реалном ест 1000 shesab и 5000 phone

Не думаю, что другим это интересно

yaxta
ето не может создат что либо проблема после обновления таблицы?

Вы предлагаете другим узнать, будут ли у вас проблемы после обновления таблицы ?
11 фев 15, 11:47    [17248917]     Ответить | Цитировать Сообщить модератору
 Re: оьновления таблицы  [new]
yaxta
Member

Откуда: азербайджан,баку
Сообщений: 518
Glory
Не думаю, что другим это интересно




ха ха ха

да конечно

и сделал все получилос прекрасно


спасибо вам glory за советы
11 фев 15, 11:54    [17248988]     Ответить | Цитировать Сообщить модератору
 Re: оьновления таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104760
yaxta
и сделал все получилос прекрасно

А тему то на форуме зачем открывали ?
11 фев 15, 11:56    [17249003]     Ответить | Цитировать Сообщить модератору
 Re: оьновления таблицы  [new]
yaxta
Member

Откуда: азербайджан,баку
Сообщений: 518
Glory
yaxta
и сделал все получилос прекрасно

А тему то на форуме зачем открывали ?


советы и идеи от вас получил
11 фев 15, 14:07    [17250106]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить