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

Oracle SQLでコードを記述する方法(102への「CCYYMMDD」など)

    日付文字列は複数の形式である可能性があるため、どの数値の日付文字列がどの形式に対応するかを判別する関数を作成することはできません。

    例:010203 可能性があります:

    • フォーマット2:DDMMYY 2月1日03
    • フォーマット3:MMDDYY 03年1月2日
    • フォーマット101:YYMMDD 2月3日01
    • フォーマット306:DDHHMM 1日目の02:03
    • フォーマット402:HHMMSS 01:02:03
    • フォーマット405:MMMMSS 102分3秒
    • フォーマット610:CCYYMM 0102年3月
    • フォーマット616:CCYYWW 0102の第3週

    同様に10080102 可能性があります:

    • フォーマット4:DDMMCCYY 102年8月10日
    • フォーマット102:CCYYMMDD 1008年1月2日
    • フォーマット305:MMDDHHMM 10月8日01:02
    • フォーマット501:HHMMHHMM 10:08から01:01までの期間

    上で説明したように、いくつかの値が何であるかがあいまいであり、複数の形式を返す可能性があるため、できません。代わりに、別の列を作成し、(あいまいな)数値からフォーマットコードを再構築しようとするのではなく、ユーザーが日付を入力したときに日付フォーマットを保存する必要があります。



    1. PythonMySQLdb更新クエリが失敗する

    2. Javaでパッケージレベルの連想配列を作成する

    3. 削除-ターゲットテーブルを指定できませんか?

    4. SQLServer2019でファイルをコピーする新しい方法