みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

PHP、MySQLのUpdateで数式の答えをそれぞれのセルに挿入

こんにちは。PHPの初心者です。PHP内でのMySQL Updateの使い方で苦労しています。
table02に4つのフィールドがあります。このうちで使うのは「num」と「percent」です。結局、numにあるセルの数を一定数($total_num_rows)で割って100を掛けたいのですが。

$sql = "SELECT * FROM $table02";
$result = mysql_query($sql,$my_sql_connection) or die(mysql_error());
WHILE ($row = mysql_fetch_array($result)) {
$num = $row["num"];
$percent = $num/$total_num_rows*100;
$update_percent = "UPDATE $table02 SET percent = '$percent'";
$update_result = mysql_query($update_percent,$my_sql_connection);

$percentをprintとすると、それぞれの行に適した数字が数式に従って表示されます。でも結局テーブル上では同じ数字が「percent」のフィールド下のセルに挿入されてしまいます。どうやったらそれぞれのセルにprintで表示されるような正しい数字を挿入することができるでしょうか?

どうぞ宜しくお願いします。

投稿日時 - 2008-10-18 16:56:14

QNo.4410965

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

SQL知ってますか?
"UPDATE $table02 SET percent = '$percent'"
ではすべてのレコードを更新してしまします
"UPDATE $table02 SET percent = '$percent' where なんらかの条件"
により、更新するのを限定したらどうですか?

もしくは
update table02 set percent=num/total*100
とでもするか

投稿日時 - 2008-10-18 17:30:23

お礼

なるほど。。。

ありがとうございます。

投稿日時 - 2008-10-18 17:42:09

あなたにオススメの質問