2015-02-10 5 views
0

Как должен выглядеть мой запрос, если я хочу, чтобы UPDATE был только последней записью Datetime? У меня есть stamp_in & stamp_out в моем столе.Обновить последнее «Datetime»

По моему запросу я обновляю все поля в stamp_out с помощью $datetime_now.

С помощью PHP я фильтрую это только для обновления дня «Сегодня». Но, если в тот же день есть несколько записей, все записи обновляются! Как я могу это решить?

PHP

$query = "UPDATE usr_time_reg 
      SET usr_stamp_out = :datetime_now, usr_stamp_status = :usr_stamp_status 
      WHERE usr_stamp_in LIKE :date_now"; 
      //LIMIT LATEST usr_stamp_in 
+0

Вы пробовали 'LIMIT 1' с' ORDER BY usr_stamp_in DESC'? – empiric

+0

Вам нужно найти способ выбрать последний элемент, если есть несколько записей. Если важно удалить последний элемент, сохраните временную метку вместо даты. – jarlh

+0

@ empiric Perfect! Работает как шарм. Спасибо! – d00rman

ответ

0

Право запрос должен быть:

PHP

$query = "UPDATE usr_time_reg 
      SET usr_stamp_out = :datetime_now, usr_stamp_status = :usr_stamp_status 
      WHERE usr_stamp_in LIKE :date_now 
      ORDER BY usr_stamp_in DESC LIMIT 1; 
Смежные вопросы