2013-03-08 2 views
0

У меня следующая ситуация:Zend Framework: условное обновление столбца

скажем, у меня есть две колонки в моей таблице базы данных:

visits и date, я хотел бы обновить date колонку только при visits = 1. Есть ли для этой цели Zend_Db_Expression или мне нужно сначала запросить таблицу и проверить значение visits, а затем решить обновить столбец date или нет.

+0

'' table_name' набор 'ur_val', где посещения date' = 1; ? – Vimalnath

+0

спасибо vimalnath за ответ, но это не сработает, потому что столбец «посещений» увеличивается при каждом посещении, и я хочу обновить столбец «date» только при первом посещении. –

+0

Как вы узнаете, что пользователь впервые посетил? – Vimalnath

ответ

0

вы можете использовать операторы CASE с MySQL. Должен также работать и с другими механизмами SQL.

http://dev.mysql.com/doc/refman/5.1/de/case-statement.html

Я не думаю, что Zend_Db_Expression поддерживает случаи, хотя. Вам придется записать эту часть вручную.

Посмотрите на это UPDATE например, с использованием СЛУЧАЙ:

http://www.bennadel.com/blog/933-Using-CASE-Statements-In-A-SQL-UPDATE-Query.htm

Lucian обновление

Смежные вопросы