sql >> データベース >  >> RDS >> Mysql

codeigniterのアクティブレコード構文を使用してmysqlデータベースのフィールドをインクリメントします

    以下のように行うことができます:

    $this->db->where('id', $post['identifier']);
    $this->db->set('votes', 'votes+1', FALSE);
    $this->db->update('users');
    

    これが機能する理由は、3番目の(オプションの)FALSEパラメーターが、生成されたクエリをバッククォート('で保護しないようにCodeIgniterに指示するためです。 )。これは、生成されるSQLが次のようになることを意味します。

    UPDATE users SET votes= votes + 1 WHERE id= '44'

    気づいたら、バックティックは'(votes+1)'から削除されます 、これにより、投票属性を1つ増やすという望ましい効果が得られます。



    1. mysqlカスタムソート

    2. ルームライブラリを使用してstrftimeとdatetimeを正しく使用するにはどうすればよいですか?

    3. PostgreSQLプロセスがトランザクションでアイドル状態になっているとはどういう意味ですか?

    4. SQL Server(T-SQL)でのREPLICATE()関数のしくみ