MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Tambahkan Leading Zeros di SQL

Di bawah ini adalah contoh penambahan angka nol di depan pada SQL, menggunakan berbagai DBMS.

Oracle

Oracle memiliki TO_CHAR(number) fungsi yang memungkinkan kita untuk menambahkan angka nol di depan suatu angka. Ini mengembalikan hasilnya sebagai string dalam format yang ditentukan.

SELECT TO_CHAR(7, '000')
FROM DUAL;

Hasil:

007

0 elemen format adalah apa yang menghasilkan nol di depan. Jika kita tidak ingin angka nol di depan, kita bisa menggunakan 9 .

Berikut perbandingan antara 0 dan 9 untuk menunjukkan apa yang saya maksud:

SELECT 
    TO_CHAR(1234.456, '000G000D00') AS "0",
    TO_CHAR(1234.456, '999G999D99') AS "9"
FROM DUAL;

Hasil:

             0              9 
______________ ______________ 
 001,234.46       1,234.46    

G adalah untuk pemisah grup dan D adalah untuk pemisah desimal. Lihat daftar elemen format angka ini untuk daftar lengkapnya.

Oracle juga memiliki LPAD() fungsi yang memungkinkan kita untuk mengisi angka dengan nol di depan (atau karakter lainnya). Lihat 2 Cara Memformat Angka dengan Nol Awal di Oracle sebagai contoh.

PostgreSQL

PostgreSQL juga memiliki TO_CHAR() fungsi, dan berfungsi seperti fungsi Oracle dengan nama yang sama:

SELECT TO_CHAR(7, '000');

Hasil:

007

Dan inilah perbandingan antara 0 dan 9 :

SELECT 
    TO_CHAR(1234.456, '000G000D00') AS "0",
    TO_CHAR(1234.456, '999G999D99') AS "9";

Hasil:

      0      |      9      
-------------+-------------
  001,234.46 |    1,234.46

Lihat Pola &Pengubah Template untuk Pemformatan Numerik di Postgres untuk daftar lengkap pola template yang dapat digunakan dengan fungsi ini di PostgreSQL.

Seperti Oracle, PostgreSQL juga memiliki LPAD() fungsi yang memungkinkan kita untuk memasukkan angka dengan angka nol di depan. Lihat 2 Cara untuk Menambahkan Angka Nol di PostgreSQL sebagai contoh.

MySQL

MySQL memiliki LPAD() fungsi yang memungkinkan kita untuk mengisi bagian kiri string atau angka dengan karakter atau rangkaian karakter yang kita pilih. Oleh karena itu, kita dapat menggunakannya untuk mengisi nomor kita dengan nol:

SELECT LPAD(7, 3, 0);

Hasil:

007

Untungnya, kami dapat meneruskan nomor tersebut sebagai tipe numerik, jadi tidak perlu mengubahnya menjadi string terlebih dahulu.

Lihat Cara Menambahkan Angka Nol Awal ke Angka di MySQL untuk informasi selengkapnya.

MariaDB

Seperti MySQL, MariaDB juga memiliki LPAD() fungsi yang memungkinkan kita untuk mengisi bagian kiri string atau angka dengan karakter atau rangkaian karakter yang kita pilih:

SELECT LPAD(7, 3, 0);

Hasil:

007

Dan seperti halnya MySQL, kita dapat meneruskan nomor sebagai tipe numerik, jadi tidak perlu mengubahnya menjadi string terlebih dahulu.

Lihat Cara Menambahkan Angka dengan Angka Nol di MariaDB untuk informasi selengkapnya.

SQL Server

SQL Server memiliki FORMAT() fungsi yang memungkinkan kita untuk memformat angka menggunakan string format:

SELECT FORMAT(7, '000');

Hasil:

007

Ini dia dengan pemisah grup dan pemisah desimal:

SELECT FORMAT(1234, '0,000.00');

Hasil:

1,234.00

Lihat Menambahkan Leading &Trailing Zeros di SQL Server untuk informasi selengkapnya.

SQLite

SQLite memiliki PRINTF() fungsi yang dapat digunakan untuk menambahkan angka nol di depan suatu bilangan:

SELECT PRINTF('%03d', 7);

Hasil:

007

Lihat Cara Memformat Angka dengan Nol Awal di SQLite untuk penjelasannya.

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.

Jadi contoh di atas bisa diubah menjadi ini:

SELECT FORMAT('%03d', 7);

Hasil:

007

  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Masukkan Nilai pada Posisi Tertentu dalam Array di MongoDB

  2. hitung kemunculan array di semua dokumen dengan mongo

  3. Bagaimana Memulai Dengan Otomatisasi Basis Data

  4. MongoDB, MapReduce dan sortir

  5. MongoDB $degreesToRadians