【PostgreSQL】数値をカンマで区切る

PostgreSQL自作関数

数値をカンマで区切る自作関数

数字を「1000000」ではなく、カンマ区切りで「1,000,000」と表示します。

※ このページでは関数を紹介しますが、書式設定の実例はこちらで紹介しています。

 

引数

引数1(numeric):カンマ区切りにする数値

 

返り値

カンマ区切りした文字列

 

コード

CREATE OR REPLACE FUNCTION commaseparated(
    numeric)
  RETURNS character varying AS
$BODY$
declare

	i_target	alias for $1; 	--引数1:対象の数値
	
BEGIN
	
	return to_char(i_target, 'fm999,999,999,999,999'); 
	
END;
$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;
ALTER FUNCTION commaseparated(numeric)
  OWNER TO postgres;

 

実行例

select * from commaseparated(1234567890);
--1,234,567,890

 

他にもこんな関数があります(数値操作の関数)

数値であるかのチェック(IsNumeric)

四捨五入(Round)

消費税を計算する(8%、10%対応)

ランダム値を生成する(Rand)

Decode関数