Berikut adalah dua cara untuk memformat angka sebagai persentase di SQLite.
Opsi 1:PRINTF()
atau FORMAT()
Fungsi
Kita dapat menggunakan PRINTF()
atau FORMAT()
berfungsi untuk menambahkan tanda persen ke angka:
SELECT PRINTF('%2d%%', 17);
Hasil:
17%
Saat menggunakan fungsi ini, tanda persen memiliki arti khusus dalam format string (ini menunjukkan bahwa substitusi mengikuti). Jika kita ingin tanda persen aktual disertakan dalam output, kita perlu menggunakan tanda dua persen dalam format string.
Berikut beberapa contoh lainnya:
SELECT
PRINTF('%02d%%', 3.45) AS "1",
PRINTF('%2.2f%%', 3) AS "2",
PRINTF('%1.2f%%', 3.456) AS "3",
PRINTF('%2.3f%%', 3.456) AS "4";
Hasil:
1 2 3 4 --- ----- ----- ------ 03% 3.00% 3.46% 3.456%
Perbarui :SQLite 3.38.0 (dirilis 22 Feb 2022) berganti nama menjadi PRINTF()
berfungsi untuk FORMAT()
. PRINTF()
asli nama dipertahankan sebagai alias untuk kompatibilitas mundur.
Oleh karena itu, contoh pertama di atas dapat diubah menjadi ini:
SELECT FORMAT('%2d%%', 17);
Hasil:
17%
Opsi 2:Menggabungkan
Cara lain untuk melakukannya adalah dengan menggunakan operator penggabungan (||
) untuk menggabungkan angka dengan tanda persentase:
SELECT 3.45 || '%';
Hasil:
3.45%
Dapat juga bekerja dengan ekspresi seperti ini:
SELECT (0.045 * 100) || '%';
Hasil:
4.5%