php+mysql 将num1,num2,num3从小到大排序写到num字段里面

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php+mysql 将num1,num2,num3从小到大排序写到num字段里面相关的知识,希望对你有一定的参考价值。

我只能写出下面这样的 ?怎么改改才行啊 ???
<?php
$con = mysql_connect("localhost","root","root");
if (!$con)
die('Could not connect: ' . mysql_error());

mysql_select_db("mydb", $con);
mysql_query("UPDATE table SET num = 这里应该怎么写才能实现上面的功能");
mysql_close($con);
?>
<?php
请高人帮我改改代码号码??我真的不会了。。

num=contact(num1,num2,num3)追问

不排序的我也会,问题是怎么排序?

追答

num=contact((
case when num1num2 and num2>num3 then num2 when num1>num3 and num3>num2 then num3 else num1 end
),(
case when num1>num2 then num1 when num2>num3 then num2 else num3 end))

参考技术A <?
$con = mysql_connect("localhost","root","root");
if (!$con)
die('Could not connect: ' . mysql_error());

mysql_select_db("mydb", $con);

$sql = "select * from `table`";
$rs = mysql_query($sql);
while($ary = mysql_fetch_array($rs))

$a = $ary["num1"];
$b = $ary["num2"];
$c = $ary["num3"];

$str = "";
if($a>=$b)
$str = $b.$a;
if($c>=$a)$str = $str.$c;
if($c<=$b)$str = $c.$str;
if($c<$a&&$c>$b)$str = $b.$c.$a;

else
$str = $a.$b;
if($c>=$b)$str = $str.$c;
if($c<=$a)$str = $c.$str;
if($c<$b&&$c>$a)$str = $a.$c.$b;


mysql_query("UPDATE table SET num = ".$str." where id=".$ary["id"]);


@mysql_free_result($rs);
?>

mysql语句不知怎样排序那就用php程序来排序吧!追问

。。。点错了 。我应该采纳你的。你的调试成功了,我从新给你提问 给你分

追答

哈哈,分数对我来讲没什么意义,最主要帮到人同时满足下自己被认可的虚荣心!

追问

又回来找你,貌似 num1=num2=num3时, 比如都是1时,输出的1111,变成4位数了。。不是111,是怎么回事?

追答

另外开个问题吧!可以不加分数!

PHP算法--将数字金额转换成大写金额

最近在看一些PHP算法题,遇到一个将数字金额转换成大写金额的小算法题,这里贴出自己的一个例子。

注:这个小算法适用于10万以内的金额。

<?php
//$num = 12345.67; 
function RMB_Upper($num)
{
    $num = round($num,2);  //取两位小数
    $num = ‘‘.$num;  //转换成数字
    $arr = explode(‘.‘,$num);  

    $str_left = $arr[0]; // 12345
    $str_right = $arr[1]; // 67

    $len_left = strlen($str_left); //小数点左边的长度
    $len_right = strlen($str_right); //小数点右边的长度

    //循环将字符串转换成数组,
    for($i=0;$i<$len_left;$i++)
    {
        $arr_left[] = substr($str_left,$i,1);
    }
    //print_r($arr_left);
    //output:Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )

    for($i=0;$i<$len_right;$i++)
    {
        $arr_right[] = substr($str_right,$i,1);
    }
    //print_r($arr_right);
    //output:Array ( [0] => 6 [1] => 7 )
    
    //构造数组$daxie
    $daxie = array(
        ‘0‘=>‘零‘,
        ‘1‘=>‘壹‘,
        ‘2‘=>‘贰‘,
        ‘3‘=>‘叁‘,
        ‘4‘=>‘肆‘,
        ‘5‘=>‘伍‘,
        ‘6‘=>‘陆‘,
        ‘7‘=>‘柒‘,
        ‘8‘=>‘捌‘,
        ‘9‘=>‘玖‘,
    );

    //循环将数组$arr_left中的值替换成大写
    foreach($arr_left as $k => $v)
    {
        $arr_left[$k] = $daxie[$v];
        switch($len_left--)
        {
            //数值后面追加金额单位
            case 5:
                $arr_left[$k] .= ‘万‘;break;
            case 4:
                $arr_left[$k] .= ‘千‘;break;
            case 3:
                $arr_left[$k] .= ‘百‘;break;
            case 2:
                $arr_left[$k] .= ‘十‘;break;
            default:
                $arr_left[$k] .= ‘元‘;break;
        }
    }
    //print_r($arr_left);
    //output :Array ( [0] => 壹万 [1] => 贰千 [2] => 叁百 [3] => 肆十 [4] => 伍元 )

    foreach($arr_right as $k =>$v)
    {
        $arr_right[$k] = $daxie[$v];
        switch($len_right--)
        {
            case 2:
                $arr_right[$k] .= ‘角‘;break;
            default:
                $arr_right[$k] .= ‘分‘;break;
        }
    }
    //print_r($arr_right);
    //output :Array ( [0] => 陆角 [1] => 柒分 )

    //将数组转换成字符串,并拼接在一起
    $new_left_str = implode(‘‘,$arr_left);
    $new_right_str = implode(‘‘,$arr_right);

    $new_str = $new_left_str.$new_right_str;

    //echo $new_str;
    //output :‘壹万贰千叁百肆十伍元陆角柒分‘

    //如果金额中带有0,大写的字符串中将会带有‘零千零百零十‘,这样的字符串,需要替换掉
    $new_str = str_replace(‘零万‘,‘零‘,$new_str);
    $new_str = str_replace(‘零千‘,‘零‘,$new_str);
    $new_str = str_replace(‘零百‘,‘零‘,$new_str);
    $new_str = str_replace(‘零十‘,‘零‘,$new_str);
    $new_str = str_replace(‘零零零‘,‘零‘,$new_str);
    $new_str = str_replace(‘零零‘,‘零‘,$new_str);
    $new_str = str_replace(‘零元‘,‘元‘,$new_str);


    //echo‘<br/>‘;
    return $new_str;
}


echo RMB_Upper(12345.67);

 

以上是关于php+mysql 将num1,num2,num3从小到大排序写到num字段里面的主要内容,如果未能解决你的问题,请参考以下文章

C语言中 num3=(num1=34,num2++,num1+num2++)解释下啥意思

php中 === 的使用

C语言程序题:输入任意三个整数num1、num2、num3,求三个数中的最大值

这个代码哪里出错了?

C语言新手 num=num1+num2/num3-num4; 请问那个句子应该怎么读呢?而且我还

C—水仙花数