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

文字列/列の値をmysqlの日付間隔定数(DAY、MONTH ...)として使用するにはどうすればよいですか?

    残念ながら、MySQLは、文字列や数値ではなく、INTERVALの後にキーワードを期待しています。 CASEステートメントを使用して目的を達成し、さまざまなキーワードでさまざまなケースを指定できます。

    例として、適切な単位で値を日付に追加するとすると、SQLステートメントは次のようになります。

    SELECT CASE unit
           WHEN "DAY" THEN date_add(date, INTERVAL value DAY)
           WHEN "MONTH" THEN date_add(date, INTERVAL value MONTH)
           END
           AS newDate
    FROM table
    

    ちなみにWHERE句でも機能します:)



    1. OracleGroup-byバグの概要

    2. Oracleでのレコードベースの挿入と更新

    3. Oracle ISNULL()と同等

    4. RMLユーティリティツールを介したSQLDIAGパフォーマンスデータのレポート| SQLServerのパフォーマンスのトラブルシューティング-7