Thread: round up
View Single Post

   
  #3 (permalink)  
Old 05-07-2008, 10:16 AM
christian
 
Posts: n/a
Default Re: round up

Thanks for you answer it work great !!

I have changed
$result = mysql_query("SELECT
cardnum,callednum,disposition,billseconds,ceiling( (truncate((billcost +
1000)/10000,2))*20)/20,callstart,datecall FROM cdrs WHERE
disposition='ANSWER' and cardnum='$poste' ORDER BY callstart DESC ");

I have (billcost + 1000) because 1000 is the connection price



"cvh@LE" <christian.hansel@cpi-service.com> a écrit dans le message de news:
80583eaa-169c-49e2-a75f-a598ea84ead3...oglegroups.com...
On 6 Mai, 01:37, "christian" <christ...@comdif-nospam.com> wrote:
> Sorry but I'm very newbie for writing my own script
> I try
> $result = mysql_query("SELECT
> cardnum,callednum,disposition,billseconds,truncate (billcost /10000,2)
> ,callstart FROM cdrs WHERE disposition='ANSWER' and cardnum='$poste' ORDER
> BY callstart DESC ");
> or
> $result = mysql_query("SELECT
> cardnum,callednum,disposition,billseconds,round(bi llcost /10000,2)
> ,callstart FROM cdrs WHERE disposition='ANSWER' and cardnum='$poste' ORDER
> BY callstart DESC ");
>
> I whant up rounded billcost by step of 0,05
> ex 0,01 is 0,05 or 0,06 is 0,1 and 0,11 is 0,15
> Any idea ?
> Thanks


All you need is a bit of math

mysql> set @number=0.01;
Query OK, 0 rows affected (0.00 sec)

mysql> select ceiling(@number*20)/20;
+------------------------+
| ceiling(@number*20)/20 |
+------------------------+
| 0.0500 |
+------------------------+
1 row in set (0.00 sec)

mysql> set @number=0.06;
Query OK, 0 rows affected (0.00 sec)

mysql> select ceiling(@number*20)/20;
+------------------------+
| ceiling(@number*20)/20 |
+------------------------+
| 0.1000 |
+------------------------+
1 row in set (0.00 sec)

mysql>

mysql> set @number=0.11;
Query OK, 0 rows affected (0.00 sec)

mysql> select ceiling(@number*20)/20;
+------------------------+
| ceiling(@number*20)/20 |
+------------------------+
| 0.1500 |
+------------------------+
1 row in set (0.00 sec)

mysql> set @number=0.15;
Query OK, 0 rows affected (0.00 sec)

mysql> select ceiling(@number*20)/20;
+------------------------+
| ceiling(@number*20)/20 |
+------------------------+
| 0.1500 |
+------------------------+
1 row in set (0.00 sec)

mysql>


Reply With Quote