sql >> データベース >  >> NoSQL >> MongoDB

SQLに先行ゼロを追加する

    以下は、さまざまなDBMSを使用して、SQLの数値に先行ゼロを追加する例です。

    Oracle

    OracleにはTO_CHAR(number)があります 数値に先行ゼロを追加できる関数。結果を指定された形式の文字列として返します。

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

    結果:

    007

    0 format要素は、先行ゼロを出力するものです。先行ゼロが必要ない場合は、9を使用できます。 。

    0の比較は次のとおりです および9 私が何を意味するかを示すために:

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

    結果:

                 0              9 
    ______________ ______________ 
     001,234.46       1,234.46    

    G グループセパレータとD用です 小数点記号用です。完全なリストについては、この数値形式要素のリストを参照してください。

    OracleにはLPAD()もあります 先行ゼロ(またはその他の文字)で数値を埋めることができる関数。例については、Oracleで先行ゼロを使用して数値をフォーマットする2つの方法を参照してください。

    PostgreSQL

    PostgreSQLにはTO_CHAR()もあります 関数であり、同じ名前のOracleの関数のように機能します:

    SELECT TO_CHAR(7, '000');

    結果:

    007

    0の比較は次のとおりです および9

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

    結果:

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

    PostgreSQLでこの関数で使用できるテンプレートパターンの完全なリストについては、Postgresの数値フォーマット用のテンプレートパターンと修飾子を参照してください。

    Oracleと同様に、PostgreSQLにもLPAD()があります。 先行ゼロで数値を埋めることができる関数。例については、PostgreSQLで先行ゼロを追加する2つの方法を参照してください。

    MySQL

    MySQLにはLPAD()があります 文字列または数値の左側に、選択した文字または一連の文字を埋め込むことができる関数。したがって、これを使用して数値をゼロで埋めることができます。

    SELECT LPAD(7, 3, 0);

    結果:

    007

    幸い、数値を数値タイプとして渡すことができるため、最初に文字列に変換する必要はありません。

    詳細については、MySQLの数値に先行ゼロを追加する方法を参照してください。

    MariaDB

    MySQLと同様に、MariaDBにもLPAD()があります 文字列または数値の左側に、選択した文字または一連の文字を埋め込むことができる関数:

    SELECT LPAD(7, 3, 0);

    結果:

    007

    また、MySQLと同様に、数値を数値タイプとして渡すことができるため、最初に文字列に変換する必要はありません。

    詳細については、MariaDBで先行ゼロを使用して数値を埋める方法を参照してください。

    SQL Server

    SQLServerにはFORMAT()があります フォーマット文字列を使用して数値をフォーマットできる関数:

    SELECT FORMAT(7, '000');

    結果:

    007

    これは、グループ区切り文字と小数点記号付きです:

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

    結果:

    1,234.00

    詳細については、SQLServerでの先頭と末尾のゼロの追加を参照してください。

    SQLite

    SQLiteにはPRINTF()があります 数値に先行ゼロを追加するために使用できる関数:

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

    結果:

    007

    説明については、SQLiteで先行ゼロを使用して数値をフォーマットする方法を参照してください。

    更新 :SQLite 3.38.0(2022年2月22日リリース)はPRINTF()に名前を変更しました FORMAT()への関数 。元のPRINTF() 名前は、下位互換性のためにエイリアスとして保持されます。

    したがって、上記の例は次のように変更できます。

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

    結果:

    007

    1. MongoDB $ range

    2. findOneAndUpdateメソッドから更新されたドキュメントを取り戻すにはどうすればよいですか?

    3. MongoDB:DBへの接続を確認してください

    4. MongoDB内部リストに要素を挿入するにはどうすればよいですか?