Il existe plusieurs façons de formater un nombre en pourcentage dans SQL, selon le SGBD utilisé.
Voici des exemples d'ajout d'un signe de pourcentage à un nombre dans certains des SGBD les plus populaires.
MySQL
Dans MySQL, nous pouvons utiliser tle CONCAT()
fonction pour concaténer le nombre et le signe pourcentage :
SELECT CONCAT(3.75, '%');
Résultat :
3.75%
Voir Formater un nombre en pourcentage dans MySQL pour en savoir plus.
SQL Server
FORMAT()
de SQL Server fonction nous fournit le P
spécificateur de format, qui est utilisé pour afficher un signe de pourcentage dans le nombre formaté :
SELECT FORMAT(.27, 'P') Result;
Résultat :
+----------+ | Result | |----------| | 27.00% | +----------+
Voir 4 façons de convertir un nombre en pourcentage dans SQL Server pour en savoir plus.
Oracle
Oracle Database a un TO_CHAR(number)
fonction que nous pouvons utiliser pour formater un nombre avec. On peut alors utiliser CONCAT()
pour concaténer le nombre et le signe pourcentage :
SELECT CONCAT(TO_CHAR(18, 'fm00D00'), '%')
FROM DUAL;
Résultat :
18.00%
Voir Formater un nombre en pourcentage dans Oracle pour en savoir plus.
PostgreSQL
Dans PostgreSQL, nous pouvons utiliser le TO_CHAR()
fonction pour formater un nombre en pourcentage.
Voici divers exemples pour illustrer certaines des choses que nous pouvons faire avec cette fonction :
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";
Résultat :
+-----+----+-------+-------+ | 1 | 2 | 3 | 4 | +-----+----+-------+-------+ | 07% | 7% | 7.46% | 7.00% | +-----+----+-------+-------+
Voir 3 façons de formater un nombre en pourcentage dans PostgreSQL pour en savoir plus.
MariaDB
MariaDB a un CONCAT()
fonction pour faire le travail :
SELECT CONCAT(7.45, '%');
Résultat :
7.45%
Voir Ajouter un signe de pourcentage à un nombre dans MariaDB pour en savoir plus.
SQLite
Avec SQLite, nous pouvons utiliser le PRINTF()
fonction :
SELECT PRINTF('%2d%%', 17);
Résultat :
17%
Nous pouvons également concaténer le signe pourcentage et le nombre si nécessaire. Voir 2 façons d'ajouter un signe de pourcentage à un nombre dans SQLite pour un exemple.
Mettre à jour :SQLite 3.38.0 (publié le 22 février 2022) a renommé PRINTF()
fonction à FORMAT()
. Le PRINTF()
d'origine nom est conservé en tant qu'alias pour la rétrocompatibilité.
Ainsi, l'exemple ci-dessus peut être remplacé par ceci :
SELECT FORMAT('%2d%%', 17);
Résultat :
17%