0

テーブルには、フィールド幅タイプのフロアがあります。

そして、PHPでクエリを実行するときは、この値から別の数値を差し引いて、たとえば次のようにします。

$number = 14.3;
mysql_query("UPDATE field SET count = count - $number WHERE name = '$name');

からこれ$numberを差し引く必要がありcountますが、クエリnothigは行います。角かっこで囲んでみましたが、同じ結果になりました。

4

2 に答える 2

2

COUNT予約キーワードです。バッククォートを追加してみてください。また、PHPコードを二重引用符で閉じる必要があります。

mysql_query("UPDATE field SET `count` = `count` - $number WHERE name = '$name'");

バッククォートを使用したくない場合は、テーブルにエイリアスを指定することもできます。

mysql_query("UPDATE field a SET a.count = a.count - $number WHERE name = '$name'");
于 2013-02-10T11:33:30.697 に答える
1

二重引用符がありません。これを試して:

mysql_query("UPDATE field SET `count` = `count` - $number WHERE name = '$name'");
于 2013-02-10T11:36:22.483 に答える