sql语句更新数据库中一个表中同一字段(根据其他字段)赋予不同值

jiage是表名,price和uid是字段,uid不是系统生成的字段,自己创建的.根据UID的大小判断 $a=$_POST['a']; $b=$_POST['b']; $c=$_POST['c']; $sql="update jiage set price='$a' where uid<=5 and uid>0,price='$b' where uid<=10 and uid>10,price='$c' where uid<=20 and uid>10";

update jiage set price=case when UID>0 and UID<=5 then '$a' when UID>5 and UID<=10 then '$b' when UID>10 and UID<=20 then '$c' end

貌似你那语句有地方写错了,怎么又大于10又小于等于10的追问

$uid 是网吧机器编号,根据网吧机器编号来设定每小时的费用

追答

恩,用上边那语句就可以
也就是1-5号一个价格
6-10号一个价格
11-20号一个价格
然后,那个价格应该是数字型吧,我看你用引号了,我就用引号了

追问

$a=$_POST['a'];
$b=$_POST['b'];
$c=$_POST['c'];
$sql="update jiage set price=case when UID>0 and UID5 and UID10 and UID<=20 then '$c' end";
$result= mysql_query($sql);
if ($result) {

echo "恭喜,密码修改费率成功!";

麻烦了 我想问下 我运行之后数据库中price的数字没有变啊,

追答

恩?你数据库是什么的呀?

你,右上角,这么问太耽误时间

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答