使用されているDBMSに応じて、SQLで数値をパーセンテージとしてフォーマットする方法はいくつかあります。
最も一般的なDBMSのいくつかの数値にパーセント記号を追加する例を次に示します。
MySQL
MySQLでは、CONCAT()
を使用できます。 数値とパーセント記号を連結する関数:
SELECT CONCAT(3.75, '%');
結果:
3.75%
詳細については、MySQLで数値をパーセンテージとしてフォーマットするを参照してください。
SQL Server
SQLServerのFORMAT()
関数はP
を提供します フォーマット指定子。フォーマットされた数値にパーセント記号を表示するために使用されます:
SELECT FORMAT(.27, 'P') Result;
結果:
+----------+ | Result | |----------| | 27.00% | +----------+
詳細については、SQLServerで数値をパーセンテージに変換する4つの方法を参照してください。
Oracle
OracleDatabaseにはTO_CHAR(number)
があります 数値をフォーマットするために使用できる関数。その後、CONCAT()
を使用できます 数値とパーセント記号を連結するには:
SELECT CONCAT(TO_CHAR(18, 'fm00D00'), '%')
FROM DUAL;
結果:
18.00%
詳細については、Oracleでの数値のパーセンテージとしてのフォーマットを参照してください。
PostgreSQL
PostgreSQLでは、TO_CHAR()
を使用できます 数値をパーセンテージでフォーマットする関数。
この関数でできることのいくつかを示すためのさまざまな例を次に示します。
SELECT
TO_CHAR(7, 'fm00%') AS "1",
TO_CHAR(7, 'fm99%') AS "2",
TO_CHAR(7.4567, 'fm0D00%') AS "3",
TO_CHAR(7, 'fm0D00%') AS "4";
結果:
+-----+----+-------+-------+ | 1 | 2 | 3 | 4 | +-----+----+-------+-------+ | 07% | 7% | 7.46% | 7.00% | +-----+----+-------+-------+
詳細については、PostgreSQLで数値をパーセンテージとしてフォーマットする3つの方法を参照してください。
MariaDB
MariaDBにはCONCAT()
があります 仕事をするための機能:
SELECT CONCAT(7.45, '%');
結果:
7.45%
詳細については、MariaDBの数値にパーセント記号を追加するを参照してください。
SQLite
SQLiteでは、PRINTF()
を使用できます 機能:
SELECT PRINTF('%2d%%', 17);
結果:
17%
または、必要に応じてパーセント記号と数値を連結することもできます。例については、SQLiteの数値にパーセント記号を追加する2つの方法を参照してください。
更新 :SQLite 3.38.0(2022年2月22日リリース)はPRINTF()
に名前を変更しました FORMAT()
への関数 。元のPRINTF()
名前は、下位互換性のためにエイリアスとして保持されます。
したがって、上記の例は次のように変更できます。
SELECT FORMAT('%2d%%', 17);
結果:
17%