powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Возможно ли и как? (обновить столбец числами по порядку)
7 сообщений из 7, страница 1 из 1
Возможно ли и как? (обновить столбец числами по порядку)
    #33286046
trijin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
CREATE TABLE IF NOT EXISTS `cat` (
  `cat_id` bigint( 20 ) NOT NULL auto_increment,
  `cat_left` int( 11 ) NOT NULL default '0',
  `cat_right` int( 11 ) NOT NULL default '0',
  `cat_level` int( 11 ) NOT NULL default '0',
  `cat_name` varchar( 200 ) NOT NULL default '',
  `cat_type` tinyint( 1 ) NOT NULL default '0',
  PRIMARY KEY  (`cat_id`),
  KEY `cat_level` (`cat_level`),
);
INSERT INTO `cat` VALUES 
( 1 ,  1 ,  724 ,  0 , 'Главная', 1 ),
( 28 ,  277 ,  278 ,  1 , 'cat1',  1 ),
( 29 ,  361 ,  362 ,  1 , 'cat2',   1 ),
( 33 ,  311 ,  314 ,  1 , 'cat3', 1 ),
( 34 ,  477 ,  540 ,  1 , 'cat4'  1 ),
( 35 ,  281 ,  292 ,  1 , 'cat5', 1 ),
( 40 ,  357 ,  358 ,  1 , 'cat6',  1 ),
( 41 ,  363 ,  364 ,  1 , 'cat7',  1 ),
( 42 ,  359 ,  360 ,  1 , 'cat8',  1 ),
( 43 ,  299 ,  300 ,  1 , 'cat9',  1 ),
( 44 ,  335 ,  336 ,  1 , 'cat10',  1 ),
( 50 ,  413 ,  414 ,  1 , 'cat11',   1 ),
( 52 ,  375 ,  376 ,  1 , 'cat12',   1 ),
( 53 ,  411 ,  412 ,  1 , 'cat13',  1 ),
( 54 ,  415 ,  416 ,  1 , 'cat14',   1 ),
( 55 ,  425 ,  440 ,  1 , 'cat15',  1 );
а получить надо
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
CREATE TABLE IF NOT EXISTS `cat2` (
  `cat_id` bigint( 20 ) NOT NULL auto_increment,
  `cat_left` int( 11 ) NOT NULL default '0',
  `cat_right` int( 11 ) NOT NULL default '0',
  `cat_level` int( 11 ) NOT NULL default '0',
  `cat_name` varchar( 200 ) NOT NULL default '',
  `cat_type` tinyint( 1 ) NOT NULL default '0',
  PRIMARY KEY  (`cat_id`),
  KEY `cat_level` (`cat_level`),
);
INSERT INTO `cat2` VALUES 
( 1 ,  1 ,  1030 ,  0 , 'Главная', 1 ),
( 28 ,  1000 ,  1001 ,  1 , 'cat1',  1 ),
( 29 ,  1002 ,  1003 ,  1 , 'cat2',   1 ),
( 33 ,  1004 ,  1005 ,  1 , 'cat3', 1 ),
( 34 ,  1006 ,  1007 ,  1 , 'cat4'  1 ),
( 35 ,  1008 ,  1009 ,  1 , 'cat5', 1 ),
( 40 ,  1010 ,  1011 ,  1 , 'cat6',  1 ),
( 41 ,  1012 ,  1013 ,  1 , 'cat7',  1 ),
( 42 ,  1014 ,  1015 ,  1 , 'cat8',  1 ),
( 43 ,  1016 ,  1017 ,  1 , 'cat9',  1 ),
( 44 ,  1018 ,  1019 ,  1 , 'cat10',  1 ),
( 50 ,  1020 ,  1021 ,  1 , 'cat11',   1 ),
( 52 ,  1022 ,  1023 ,  1 , 'cat12',   1 ),
( 53 ,  1024 ,  1025 ,  1 , 'cat13',  1 ),
( 54 ,  1026 ,  1027 ,  1 , 'cat14',   1 ),
( 55 ,  1028 ,  1029 ,  1 , 'cat15',  1 );

Можно ли подобное провернуть непосредственно в запросе? UPDATE'ом?


...спасибо за ваше потраченное время...
...
Рейтинг: 0 / 0
Возможно ли и как? (обновить столбец числами по порядку)
    #33286221
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что мешает взять и попробовать?
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
Возможно ли и как? (обновить столбец числами по порядку)
    #33286350
ru_levoy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
как я понял у тебя есть какой-то табл сат и ты хочешь обновить его значения?!
1. Зачем тогда создаешь сат2?!
2. Конечно можно - именно апдейтом.
3. Но первоначальные данные вносишь инсертом
вот пример:
insert into pr (abc) values (1)
insert into pr (abc) values (2)
insert into pr (abc) values (3)
insert into pr (abc) values (4)
insert into pr (abc) values (5)
update pr
set abc=1000+(2*id_n)
Результат:
abc id_n

1002 1
1004 2
1006 3
1008 4
1010 5
...
Рейтинг: 0 / 0
Возможно ли и как? (обновить столбец числами по порядку)
    #33286368
ru_levoy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
как я понял у тебя есть какой-то табл сат и ты хочешь обновить его значения?!
1. Зачем тогда создаешь сат2?!
2. Конечно можно - именно апдейтом.
3. Но первоначальные данные вносишь инсертом
вот пример:
insert into pr (abc) values (1)
insert into pr (abc) values (2)
insert into pr (abc) values (3)
insert into pr (abc) values (4)
insert into pr (abc) values (5)
update pr
set abc=1000+(2*id_n)
Результат:
abc id_n

1002 1
1004 2
1006 3
1008 4
1010 5
...
Рейтинг: 0 / 0
Возможно ли и как? (обновить столбец числами по порядку)
    #33286595
trijin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это был примердвух таблиц, одна которая имеется...
Уже имеется и количество строк там куда больше.
ID разные... т.е. id+1000 не катит...
вторая таблица это просто пример того что надо
(на сколкьо я помню по правилам хорошего тона на этом форуме при вопросе желательно давать тестовые таблицы, которые я и дал)
...
Рейтинг: 0 / 0
Возможно ли и как? (обновить столбец числами по порядку)
    #33286611
Фотография Валентин К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
update поможет, если будет откуда счетчик к ключу взять.
Поясняю.
1) Выгрузить ключи в нужном поряжке и сразу со счетчиком, например так
SET @a:=0;
create temporary table tmp1
select ID, @a:=@a+1 as TheCounter
from mytable
Order by MyField;
2) Обновить исходную таблицу
update mytable, tmp1 SET
mytable.TheCounter=tmp1.MyCounter
where mytable.ID=tmp1.ID;

подходит такое решение?
...
Рейтинг: 0 / 0
Возможно ли и как? (обновить столбец числами по порядку)
    #33288046
trijin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скорее всебо подойдет, но к сожалению, накрылась вся рабочая база и я исправил вручную... (сколько ж сил стоило.) но для всей базы это бы панацеей небыло - одно утешает.
Данное свойство подходило только для части элементов.
Но большое спасибо.!!!!!
На будущее буду знать.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Возможно ли и как? (обновить столбец числами по порядку)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]