次のような状況があります。
データベース テーブルに 2 つの列があるとします。
visits
と、 のときだけ列date
を更新したい。この目的のための Zend_Db_Expression はありますか、それとも最初にテーブルをクエリして値を確認し、次に列を更新するかどうかを決定する必要があります。date
visits = 1
visits
date
次のような状況があります。
データベース テーブルに 2 つの列があるとします。
visits
と、 のときだけ列date
を更新したい。この目的のための Zend_Db_Expression はありますか、それとも最初にテーブルをクエリして値を確認し、次に列を更新するかどうかを決定する必要があります。date
visits = 1
visits
date
MySQL で CASE ステートメントを使用できます。他の SQL エンジンでも動作するはずです。
http://dev.mysql.com/doc/refman/5.1/de/case-statement.html
ただし、Zend_Db_Expression はケースをサポートしていないと思います。その部分を手動で記述する必要があります。
CASE を使用したこの UPDATE の例を見てください。
http://www.bennadel.com/blog/933-Using-CASE-Statements-In-A-SQL-UPDATE-Query.htm
ルシアン