Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.05.2017, 23:48   #1
Gurza-Alex
Пользователь
 
Регистрация: 22.04.2017
Сообщений: 16
По умолчанию [РЕШЕНО][SQL] переименовать и отсортировать столбец

есть таблица table
и у нее 4 столбца:
id,objects,variant,var
(id не учитываю, он у меня GUID )
Вот что в таблице:
Код:
1	2	1
2	1	1
3	1	1
1	1	2
2	2	2
3	1	2
1	1	3
2	2	3
3	2	3
1	1	5
2	1	5
3	2	5
1	2	8
2	1	8
3	2	8
И надо привести к такому виду:

Код:
1	2	1
2	1	1
3	1	1
1	1	2
2	2	2
3	1	2
1	1	3
2	2	3
3	2	3
1	1	4
2	1	4
3	2	4
1	2	5
2	1	5
3	2	5
То есть в столбце var переименовать некоторые данные, как это лучше реализовать?
(данные не статические, в столбце var может идти 1 потом 3, потом 4, потом 5, потом 10 и все по три значения)

Помогите люди хорошие советом пожалуйста

Решение: http://www.programmersforum.ru/showp...09&postcount=3

Последний раз редактировалось Вадим Мошев; 11.05.2018 в 19:09.
Gurza-Alex вне форума Ответить с цитированием
Старый 11.05.2017, 10:02   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

Цитата:
есть таблица table
и у нее 4 столбца:
SQL (базы данных) ?
Код:
select id, objects, variant, var
from table
order by var, objects
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 11.05.2017, 22:00   #3
Gurza-Alex
Пользователь
 
Регистрация: 22.04.2017
Сообщений: 16
По умолчанию

Да, я сделал сегодня, осенило, что-то тупил раньше...

Код:

declare	@object	int
declare @id		varchar(255)
declare @id_var	int
declare @count	int
declare @id1	int
declare @id2	int
declare @id3	int
set @count=1
set @id_var=1
select @object=max(id_objects) from var_ref
declare @cursor cursor 
set @cursor=cursor scroll
for select * from var_ref order by 4,2
open @cursor
fetch @cursor into @id,@id1,@id2,@id3
while @@fetch_status=0
begin
	update var_ref set id_var=@id_var where id=@id	
	set @count=@count+1	
	if(@count=@object+1)
		begin
			set @count=1	
			set @id_var=@id_var+1
		end
	fetch next from @cursor into @id,@id1,@id2,@id3
end
close @cursor
deallocate @cursor
Gurza-Alex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывести связанные данные с последней датой (T-SQL) - [решено] SaheR Помощь студентам 2 29.09.2016 14:11
Как отсортировать данные? (один параметр нужно перенести из строки в столбец) ev_genchik Microsoft Office Excel 1 24.05.2015 20:13
Как переименовать таблицу SQL запросом? Dux SQL, базы данных 9 03.02.2015 17:00
Обработка матрицы. Первую и вторую строки отсортировать выбором по убыванию, пятый и шестой столбец отсортировать (С++) Sasha316 Помощь студентам 0 23.11.2012 00:48
Отсортировать столбец с номером n_sort целочисленной матрицы М(4,4) по возрастанию элементов с исполльзов yulia_93 Паскаль, Turbo Pascal, PascalABC.NET 0 15.05.2011 16:51