[前][次][番号順一覧][スレッド一覧]

mysql:11023

From: 柴垣 <柴垣 <akiro@xxxxxxxxxx>>
Date: Mon, 21 Feb 2005 09:45:10 +0900
Subject: [mysql 11023] 3桁ごとのカンマ出力

柴垣です。
 MySQL の数値出力に、3桁ごとにカンマを入れたいのです。
MySQLからデータを受け取った後での加工がむずかしい場面な
ので、なんとかMySQL側でフォーマットにしたいのですが、
なかなかうまい方法が見つかりません。
 とりあえず、下記のようなSQLをつくって動かしていますが、
もっといい方法はないでしょうか。


select
concat(
if((Value)<0,'-',''),

if(abs(Value)>1000000,concat(floor(abs(Value)/1000000),','),''),

if(abs(Value)>1000000,
  concat(lpad(floor(abs(Value)%1000000/1000),3,'0'),','), 
  if(abs(Value)>1000,concat(floor(abs(Value)/1000),','),'')),

if(abs(Value)>1000,lpad(abs(Value)%1000,3,'0'),abs(Value)%1000))

from table;

( ※ 有効桁は正負ともに10億未満。)


_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

 柴垣 顕郎 akiro@xxxxxxxxxx

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/



[前][次][番号順一覧][スレッド一覧]

->   11023 2005-02-21 09:45 [柴垣 <akiro@xxxxxxxx] 3桁ごとのカンマ出力                     
     11024 2005-02-21 10:46 ┗[木下 靖文 <kinoshit]                                       
     11026 2005-02-21 13:23  ┗[柴垣 <akiro@xxxxxxxx]