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

Откуда:
Сообщений: 228
Помогите вставить данные в таблицу из запроса
Вот select :
SELECT     Date1, Num2, Num, Date2, Vol
FROM         (SELECT     ac.Date1, '5058' AS Num2, cc.Num, '04-30-2012' AS Date2, ac.FactNum + 18 AS Vol
                       FROM          dbo.Clients AS cc LEFT OUTER JOIN
                                              dbo.Account AS ac ON cc.Num = ac.Num LEFT OUTER JOIN
                                              dbo.Raschot AS rr ON cc.Num = rr.Num
                       WHERE      (cc.DClose IS NULL) AND (cc.Num NOT IN
                                                  (SELECT     Num
                                                    FROM          dbo.IV)) AND (rr.IsAcc = 1) AND (cc.Num IN
                                                  (SELECT     Num
                                                    FROM          dbo.Lgots))) AS K1
Таблица куда нужно вставить данные имеют такие же колонки (Date1, Num2, Num, Date2, Vol)
/ Нужно срочно
2 май 12, 13:56    [12495454]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
hpv
Member

Откуда:
Сообщений: 153
drak,

А проблема то в чем заключается?
2 май 12, 14:03    [12495533]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
drak
Member

Откуда:
Сообщений: 228
hpv,

если делаю INSERT (Date1, Num2, Num, Date2, Vol) (SELECT Date1, Num2, Num, Date2, Vol
FROM (SELECT ac.Date1, '5058' AS Num2, cc.Num, '04-30-2012' AS Date2, ac.FactNum + 18 AS Vol
FROM dbo.Clients AS cc LEFT OUTER JOIN
dbo.Account AS ac ON cc.Num = ac.Num LEFT OUTER JOIN
dbo.Raschot AS rr ON cc.Num = rr.Num
WHERE (cc.DClose IS NULL) AND (cc.Num NOT IN
(SELECT Num
FROM dbo.IV)) AND (rr.IsAcc = 1) AND (cc.Num IN
(SELECT Num
FROM dbo.Lgots))) AS K1)
То выходит ошибка
2 май 12, 14:05    [12495549]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
iljy
Member

Откуда:
Сообщений: 8711
drak,

вы же в названии темы написали все, что надо, вопрос-то в чем?
2 май 12, 14:05    [12495550]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
Мистер Хенки
Member

Откуда: канализация
Сообщений: 6615
select
into
from


insert into
select
from

как то так
2 май 12, 14:06    [12495556]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
hpv
Member

Откуда:
Сообщений: 153
drak,

Insert Into Syntax
2 май 12, 14:06    [12495559]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
iljy
Member

Откуда:
Сообщений: 8711
drak
hpv,

если делаю INSERT (Date1, Num2, Num, Date2, Vol) (SELECT Date1, Num2, Num, Date2, Vol
FROM (SELECT ac.Date1, '5058' AS Num2, cc.Num, '04-30-2012' AS Date2, ac.FactNum + 18 AS Vol
FROM dbo.Clients AS cc LEFT OUTER JOIN
dbo.Account AS ac ON cc.Num = ac.Num LEFT OUTER JOIN
dbo.Raschot AS rr ON cc.Num = rr.Num
WHERE (cc.DClose IS NULL) AND (cc.Num NOT IN
(SELECT Num
FROM dbo.IV)) AND (rr.IsAcc = 1) AND (cc.Num IN
(SELECT Num
FROM dbo.Lgots))) AS K1)
То выходит ошибка

И вы ее прочитали? А также ознакомились с синтаксисом оператора insert - select? Скобки вокруг select зачем?
2 май 12, 14:06    [12495563]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
hpv
Member

Откуда:
Сообщений: 153
drak,

Перед использованием оператора, изучите его синтаксис.
И пожалуйста в след сообщениях сразу указывайте сообщение об ошибке.
2 май 12, 14:09    [12495583]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
drak
Member

Откуда:
Сообщений: 228
hpv
drak,

Перед использованием оператора, изучите его синтаксис.
И пожалуйста в след сообщениях сразу указывайте сообщение об ошибке.

Истекло время ожидания сервера - ошибка.... А скобки ставит скульник....
2 май 12, 14:11    [12495596]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
drak
Member

Откуда:
Сообщений: 228
drak,

Просто нужно очень срочно запрос вроде правильный а вот данные не вставляет
2 май 12, 14:14    [12495617]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
iljy
Member

Откуда:
Сообщений: 8711
drak
hpv
drak,

Перед использованием оператора, изучите его синтаксис.
И пожалуйста в след сообщениях сразу указывайте сообщение об ошибке.

Истекло время ожидания сервера - ошибка.... А скобки ставит скульник....

Скульник никогда никуда никаких скобок не вставляет. А "истекло время ожидания" - это не синтаксическая ошибка. Либо у вас проблемы с установлением соединения (кстати, что за клиент у вас), либо клиент не дожидается выполнения запроса, тогда смотрите клиентские настройки таймаута.
2 май 12, 14:17    [12495643]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
hpv
Member

Откуда:
Сообщений: 153
drak,

Приведите полный текст запроса и ошибки.
Запрос пж-ста оформите тэгом SRC, для удобочитаемости.

Я так понимаю запрос вы запускаете в SSMS (Microsoft SQL Server Management Studio) ?

Так же приведите версию сервера и заодно ознакомтесь с правилами оформления тем)
2 май 12, 14:18    [12495646]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
drak
Member

Откуда:
Сообщений: 228
hpv
drak,

Приведите полный текст запроса и ошибки.
Запрос пж-ста оформите тэгом SRC, для удобочитаемости.

Я так понимаю запрос вы запускаете в SSMS (Microsoft SQL Server Management Studio) ?

Так же приведите версию сервера и заодно ознакомтесь с правилами оформления тем)

sql 2005 express edition
вот запрос:
INSERT INTO IV (Date1, Num2, Num, Date2, Vol) SELECT Date1, Num2, Num, Date2, Vol
FROM (SELECT ac.Date1, '5058' AS Num2, cc.Num, '04-30-2012' AS Date2, ac.FactNum + 18 AS Vol
FROM dbo.Clients AS cc LEFT OUTER JOIN
dbo.Account AS ac ON cc.Num = ac.Num LEFT OUTER JOIN
dbo.Raschot AS rr ON cc.Num = rr.Num
WHERE (cc.DClose IS NULL) AND (cc.Num NOT IN
(SELECT Num
FROM dbo.IV)) AND (rr.IsAcc = 1) AND (cc.Num IN
(SELECT Num
FROM dbo.Lgots))) AS K1)
2 май 12, 14:29    [12495757]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
drak
Member

Откуда:
Сообщений: 228
drak
hpv
drak,

Приведите полный текст запроса и ошибки.
Запрос пж-ста оформите тэгом SRC, для удобочитаемости.

Я так понимаю запрос вы запускаете в SSMS (Microsoft SQL Server Management Studio) ?

Так же приведите версию сервера и заодно ознакомтесь с правилами оформления тем)

sql 2005 express edition
вот запрос:
INSERT INTO IV (Date1, Num2, Num, Date2, Vol) SELECT Date1, Num2, Num, Date2, Vol
FROM (SELECT ac.Date1, '5058' AS Num2, cc.Num, '04-30-2012' AS Date2, ac.FactNum + 18 AS Vol
 FROM dbo.Clients AS cc LEFT OUTER JOIN
 dbo.Account AS ac ON cc.Num = ac.Num LEFT OUTER JOIN
 dbo.Raschot AS rr ON cc.Num = rr.Num
 WHERE (cc.DClose IS NULL) AND (cc.Num NOT IN
 (SELECT Num
 FROM dbo.IV)) AND (rr.IsAcc = 1) AND (cc.Num IN
 (SELECT Num
 FROM dbo.Lgots))) AS K1
2 май 12, 14:33    [12495801]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
hpv
Member

Откуда:
Сообщений: 153
drak,

Как версию сервера стоит приводить результат запроса
select @@version


Немного переписал ваш запрос:
INSERT INTO dbo.IV (Date1, Num2, Num, Date2, Vol)
SELECT ac.Date1, '5058' AS Num2, cc.Num, '04-30-2012' AS Date2, ac.FactNum + 18 AS Vol
FROM dbo.Clients AS cc LEFT OUTER JOIN
dbo.IV AS iv2 ON cc.Num = iv2.Num LEFT OUTER JOIN
dbo.Account AS ac ON cc.Num = ac.Num LEFT OUTER JOIN
dbo.Raschot AS rr ON cc.Num = rr.Num
WHERE (cc.DClose IS NULL) AND
(iv2.Num IS NULL) AND
(rr.IsAcc = 1) AND
(cc.Num IN (SELECT Num FROM dbo.Lgots))


И привидите полное сообщение об ошибке и название клиента.
2 май 12, 14:40    [12495875]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31960
drak,

Так что разобрались с ошибкой? А то ваш последний пост без вопроса и с исправленными скобками.
2 май 12, 14:43    [12495914]     Ответить | Цитировать Сообщить модератору
 Re: insert select  [new]
drak
Member

Откуда:
Сообщений: 228
hpv
drak,

Как версию сервера стоит приводить результат запроса
select @@version


Немного переписал ваш запрос:
INSERT INTO dbo.IV (Date1, Num2, Num, Date2, Vol)
SELECT ac.Date1, '5058' AS Num2, cc.Num, '04-30-2012' AS Date2, ac.FactNum + 18 AS Vol
FROM dbo.Clients AS cc LEFT OUTER JOIN
dbo.IV AS iv2 ON cc.Num = iv2.Num LEFT OUTER JOIN
dbo.Account AS ac ON cc.Num = ac.Num LEFT OUTER JOIN
dbo.Raschot AS rr ON cc.Num = rr.Num
WHERE (cc.DClose IS NULL) AND
(iv2.Num IS NULL) AND
(rr.IsAcc = 1) AND
(cc.Num IN (SELECT Num FROM dbo.Lgots))
  Все нормально запрос выполнился. Спасибо за помощь....


И привидите полное сообщение об ошибке и название клиента.
2 май 12, 15:07    [12496193]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить