[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: UPDATE для 1000 записей
123456
есть таблица
id login tab

В те записи, в которых tab != 0, необходимо записать 0.

Дело в том, что таких записей для изменения будет больше 1000.

Как посоветуете сделать?

MySql

Вот пример:

$sql = q("SELECT `id` FROM `user` WHERE `tab` > '0'");

while ($ok = mysql_fetch_assoc($sql))
{
q("UPDATE `user` SET `tab` = '1' WHERE `id` = '". $ok['id'] ."'");
}
Игорь_Vasinsky
всего 1 запрос

update user set tab=1 where tab=0

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
123456
update `user` set `tab`='0' where `tab`>'0'
Игорь_Vasinsky
уф..

ааа..


Обновить
update
Таблица
user
установить поле =
set tab=1
где поле =
where tab<>0 или where tab >0 или where tab !=0

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
123456
ой! Что-то я ступил! Это эе обычный update запрос!

В место этого
$sql = q("SELECT `id` FROM `user` WHERE `tab` > '0'");

while ($ok = mysql_fetch_assoc($sql))
{
q("UPDATE `user` SET `tab` = '1' WHERE `id` = '". $ok['id'] ."'");
}


будет достаточно вот этого

q("UPDATE `user` SET `tab` = '1' WHERE `tab` > '0'");



Так ведь?
Игорь_Vasinsky
ага

а запросы в циклах - зло, великое зло

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
123456
Цитата
а запросы в циклах - зло, великое зло

Знаю. Это я как пример цикл привел. Чтоб было более понятно, что требуется
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.