仲間に相談

仲間に相談

Workbench_ODBC接続のクエリで、MySQLの日付関数は使えるか

編集済: May 2023 仲間に相談

WorkbenchのODBC接続で、指定DBのデータを毎日アップロードするJobを組んでいます。

この指定DBが非常に重く、アップロード完了まで半日程度かかってしまっております。


必要なデータは、DB上の更新日が最新のレコードのみなのですが、

高速化のための方法はなにかないか調べていたところ、Queryで日付指定したら数秒でアップロードできることに気づきました。


ただ、MySQLの関数で使えるものに制約があるのか、日付を直接指定(Ex.WHERE 日付 = '2021-11-30')のような方法だと動きますが、ちょっと細かい指定(Ex.WHERE DATEDIFF(CURRENTDATE(),日付) < 3)をすると動かないようです。


「DBから更新日が3日以内のデータを毎日取得する」という作業がしたいのですが、これはWorkbench上で可能なのでしょうか。

また、上記ができなくても、大量データを高速でULするための方法はなにかあるのでしょうか。


よろしくお願いいたします。

タグ付けされた:

答え

  • Domo Employee

    @ユーザー09266

    投稿ありがとうございます。

    MySQLをご利用とのことですので、「CURRENTDATE()」ではなく「current_date()」を利用すれば動作するかと思います。

    以下のSQLでエラーなく実行可能でした。

    例)

    SELECT * FROM testdb.table1 where DATEDIFF(current_date(),`date`) < 3;

  • Matz様

    早速ご返信いただきありがとうございます!!

    確認してみます!

こんにちは!

It looks like you're new here. Members get access to exclusive content, events, rewards, and more. Sign in or register to get started.
ログイン

こんにちは!

It looks like you're new here. Members get access to exclusive content, events, rewards, and more. Sign in or register to get started.
ログイン