Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запрос на селект с апдейтом 
:(
    Опции темы
Archon7th
Дата 28.6.2009, 22:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 107
Регистрация: 22.4.2005
Где: Витебск Белорусия

Репутация: нет
Всего: нет



Задача вроде как приметивнейшая, сталкивались наверно все
выделить юзера и проапдейтить его lastupate_time

как 1 запросом на селект проапдейтить только ту строку которую мы получили

при попытке вложенной вставки под переменную, МуСкуль апдейтит всех юзеров, но селектит именно того кого нужно
--------------------
CPU not found. Running software emulation.
PM MAIL ICQ   Вверх
skyboy
Дата 29.6.2009, 00:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 15
Всего: 260



что значит "выделить"?
зачем делать "select с апдейтом"? почему не сделать update записи по указанным условиям?
надо убедиться, что запись такая существует? так после выполнения update запроса можно получить количество затронутых строк.
PM MAIL   Вверх
Archon7th
Дата 29.6.2009, 08:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 107
Регистрация: 22.4.2005
Где: Витебск Белорусия

Репутация: нет
Всего: нет



просто данный запрос делает аякс, и очень тормознуто делать 17-25 запросов
большая часть из которых парные
т.е. селект строки, приметивнийшее апдейт её же с действием вида +1 или := и все

поэтому задался целью оптимизации, и запнулся на первом же шаге
--------------------
CPU not found. Running software emulation.
PM MAIL ICQ   Вверх
Akina
Дата 29.6.2009, 08:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 45
Всего: 454



На первом шаге вынесите логику обработки на сервер (хранимка, триггер)...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Zloxa
Дата 29.6.2009, 09:27 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 53
Всего: 161



Цитата(Archon7th @  28.6.2009,  22:39 Найти цитируемый пост)
юзера и проапдейтить его lastupate_time

Код

 update `users` set `lastupate_time` = :v_lastupate_time where `user_id`=:v_user_id

Цитата(Archon7th @  28.6.2009,  22:39 Найти цитируемый пост)
как 1 запросом на селект проапдейтить только ту строку которую мы получили

запросы на select не апдейтят.
Цитата(Archon7th @  28.6.2009,  22:39 Найти цитируемый пост)
при попытке вложенной вставки под переменную, МуСкуль апдейтит всех юзеров, но селектит именно того кого нужно

Обратитесь сюда, там Точно помогут.

PS Точно и детально опишите проблему
Задавайте ясные и четкие вопросы





--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Составление SQL-запросов | Следующая тема »


 




[ Время генерации скрипта: 0.0659 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.