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

Откуда: Київ
Сообщений: 10428
Создаю таблицу запросом из существующей.
Можно ли одним запросом сделать такое:

SELECT
     int_id         = IDENTITY(INT,1,1)
    ,id  = n.id
    ,gpoint = geometry::Point(0, [b]int_id[/b], 0) <---------здесь использовать значение int_id этой записи
INTO table2
FROM table1 n


То есть то, что делается в два запроса

SELECT
     int_id         = IDENTITY(INT,1,1)
    ,id  = n.id
    ,gpoint = geometry::Point(0, 0, 0)
INTO table2
FROM table1 n

update table2 set gpoint = geometry::Point(0, int_id, 0)
1 июн 14, 14:07    [16102437]     Ответить | Цитировать Сообщить модератору
 Re: Как вставить данные одним запросом?  [new]
Cygapb-007
Member

Откуда:
Сообщений: 1677
Winnipuh, а обязательно через IDENTITY?
select
   row_number()over(order by(select 1))id,
   name,
   concat(row_number()over(order by(select 1)),':',name)str
into #tst
from master.dbo.spt_values
1 июн 14, 15:01    [16102519]     Ответить | Цитировать Сообщить модератору
 Re: Как вставить данные одним запросом?  [new]
MX_User
Member

Откуда:
Сообщений: 27
SELECT
     int_id         = IDENTITY(INT,1,1)
    ,id  = n.id
    ,gpoint = geometry::Point(0, @@IDENTITY, 0)  
INTO table2
FROM table1 n
2 июн 14, 10:15    [16104371]     Ответить | Цитировать Сообщить модератору
 Re: Как вставить данные одним запросом?  [new]
iap
Member

Откуда: Москва
Сообщений: 47001
MX_User
SELECT
     int_id         = IDENTITY(INT,1,1)
    ,id  = n.id
    ,gpoint = geometry::Point(0, @@IDENTITY, 0)  
INTO table2
FROM table1 n
И работает?

Winnipuh, UPDATE - не так плохо!
2 июн 14, 10:24    [16104405]     Ответить | Цитировать Сообщить модератору
 Re: Как вставить данные одним запросом?  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
iap
MX_User
SELECT
     int_id         = IDENTITY(INT,1,1)
    ,id  = n.id
    ,gpoint = geometry::Point(0, @@IDENTITY, 0)  
INTO table2
FROM table1 n
И работает?

Winnipuh, UPDATE - не так плохо!


да я чисто из тяги к знаниям ;-)
2 июн 14, 20:08    [16108920]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить