Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

запрос с циклом в MS SQL 2000

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Базы данных
Предыдущая тема :: Следующая тема  
Автор Сообщение
Demidova Aigul



Зарегистрирован: 29.03.2005
Сообщения: 7
Откуда: Казахстан, г. Алматы

СообщениеДобавлено: Пн Авг 15 2005 12:42    Заголовок сообщения: запрос с циклом в MS SQL 2000 Ответить с цитатой

Всем привет! Very Happy
Люди, пожалуйста, помогите новичку написать следующий запрос:

в таблице "Referats", состоящей из 13 полей, у меня сейчас около 4000 записей.
Есть одна запись с полем "InventoryID"=9999. Мне нужно с помощью запроса занести в базу 40000 таких же записей; содержимое всех полей должно повторяться, только в поле "InventoryID" вместо 9999 должно к старому значению 9999 должна приписываться буква "К" и номер цикла. Например, при значении цикла=1 в поле "InventoryID" должно быть написано "9999К1", при значении=2 должно быть написано "9999К2" и т.д. до 40000.
_________________
новичок
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Wladimir



Зарегистрирован: 02.03.2005
Сообщения: 150
Откуда: Ставропольский край

СообщениеДобавлено: Пн Авг 15 2005 21:12    Заголовок сообщения: Ответить с цитатой

Код:

create procedure [dbo].[prReferats]
as
set nocount on;

declare @i int, @FieldA int, @FieldB varchar(16), @InventoryID varchar(16);

set @i = 1;

select @FieldA = [FieldA], @FieldB = [FieldB] from [Referats]
   where [InventoryID] = '9999';

while @i <= 40000
   begin
   set @InventoryID = '9999K' + cast(@i as varchar);

   insert into [Referats] ([AAA], [BBB], [InventoryID])
      values (@FieldA, @FieldB, @InventoryID)

   set @i = @i + 1;
   end;
GO


Где FieldA, B, ... - поля таблицы.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Demidova Aigul



Зарегистрирован: 29.03.2005
Сообщения: 7
Откуда: Казахстан, г. Алматы

СообщениеДобавлено: Ср Авг 17 2005 07:40    Заголовок сообщения: Ответить с цитатой

Ура! Получилось! Спасиб большое! Very Happy
_________________
новичок
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Базы данных Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...