2

私はいくつかのテーブルを持っています

ID名ポイント
-----------------------
1名前10
2 name2 15
3 name3 0
4 name4 20

ポイントテーブルを更新したい$db->Query

ポイントから1を引きたいのですが、条件はポイントが0より大きい場合です。

したがって、更新すると、テーブルはそのように表示されます

ID名ポイント
-----------------------
1名前10
2 name2 14
3 name3 0
4 name4 19
4

1 に答える 1

9

試す

UPDATE yourtable
   SET points = points - 1
 WHERE points > 0

SQLFiddle

mysqli拡張機能を使用して実行するには、次のようにします。

$db = new mysqli('localhost', 'user', 'password', 'dbname');
if ($db->connect_error) {
    die("Connect Error: " .$db->connect_error); //TODO: better error handling
}

$sql = "UPDATE yourtable
           SET points = points - 1
         WHERE points > 0";

if (!$db->query($sql)) {
    die("Update failed. Error: " .$db->error); //TODO: better error handling
}
于 2013-03-24T04:52:05.310 に答える