Помогите написать запрос
Дана таблица character_subclasses:
http://www.pictureshack.ru/images/392855.PNG Итак смотрим на последнюю колонку "class_index" - здесь идут саб-класы по порядку у одного чара. Что мне нужно сделать? Необходимо все единцы("1") в колонки class_index, у повторяющихся charId установить на "+1...". Как сделать такой запрос? Весь день голову уже ломаю) |
Re: Помогите написать запрос
Думаю легче было за пол дня переписать в ручную.
|
Re: Помогите написать запрос
тут одним запросом не обойдется :D
в раздел рынок быстрее и проще или http://rutracker.org/forum/viewtopic.php?t=3709220 часть 2 - основы работы с базой 4 и 6 пункт там как раз в примере циклы |
Re: Помогите написать запрос
L2CCCP, хех, а если 5к+ записей? Как ты себе это представляеш(сверка)? :)
Place, Ну я так примерно и предпологал, что без цикла ни как(( Просто думал. мало ли мож чето незнаю) |
Re: Помогите написать запрос
чет типа того
$all = mysql_num_rows(mysql_query("SELECT class_idexp FROM character_subclasses WHERE charid=1111")); $i = 1; while ($i <= $all) { mysql_query('UPDATE character_subclasses SET class_index = $i WHERE charid=111 AND class_index=1'); } |
Re: Помогите написать запрос
Цитата:
|
Re: Помогите написать запрос
на самом деле можно сделать и средствами SQL.
например многосоставный запрос или переменные в sql. Добавлено через 55 секунд Цитата:
|
Re: Помогите написать запрос
Цитата:
Цитата:
|
Re: Помогите написать запрос
нет возможности проверить, возможно, так будет работать тоже:
UPDATE character_subclasses SET class_index=(class_index+1) WHERE charid=111 AND class_index=1 AND class_idexp=(SELECT class_idexp FROM character_subclasses WHERE charid=1111); Добавлено через 2 минуты точнее так) UPDATE character_subclasses SET class_index=(SELECT MAX(class_index) FROM character_subclasses WHERE charid=1111)+1 WHERE charid=111 AND class_index=1 AND class_idexp=(SELECT class_idexp FROM character_subclasses WHERE charid=1111); |
Re: Помогите написать запрос
У меня наплыв идей проихошел)) ща делаю)
|
Текущее время: 08:07. Часовой пояс GMT +3. |
Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot