sql >> データベース >  >> RDS >> Mysql

スノーフレークのCONV()関数

    CONV()が行うことを行うためにUDFを作成しました。動作しますが、残念ながらJavascript変数はサンプルと同じ大きさの数値精度をサポートしていません。

    これは小さい入力では機能しますが、大きいBase36入力では次のようになります。

    15468921890196183763-この結果である必要があります

    15468921890196185000--Javascriptネイティブ変数にはそのレベルの精度がありません

    小さい値が1つのベースから別のベースに変換するのに役立つ場合は、次のようになります。

    create or replace function CONV(VALUE_IN string, OLD_BASE float, NEW_BASE float)
    returns string
    language javascript
    as
    $$
        // Usage note: Loses precision for very large inputs
        return parseInt(VALUE_IN, Math.floor(OLD_BASE).toString(Math.floor(NEW_BASE)));
    $$;
    



    1. DAO.Recordset.Updateはレコードロックになります

    2. エラー1452(23000):子行を追加または更新できません:外部キー制約が失敗します

    3. mysqlに外部からの接続を受け入れさせる方法

    4. SQLでORDERBY句を使用する方法は?