2023.04.12  

【SQL】between A and B が同じ日付の場合データが取れない

SQL    

SQLのbetween A and B で、AとBに同じ日付を入力した場合、データが取得できないことがありました。

YYYYMMDD文字列型の場合、同日をAとBに入力してもデータが取得できます。

しかし、YYYYMMDD hh:mm:ss日時型に対して、YYYYMMDD という形でAとBに同じ値を入力すると同日データが取得できないようです。

下記の例だと、2023/04/12にデータがあったとしても、targetDataは取得できません。

SELECT targetData
FROM test 
WHERE date BETWEEN "20230412" AND "20230412";

解決策

dateに時間も加えて、00:00:00から23:59:59までを判定するようにすれば取得できます。

SELECT targetData
FROM test 
WHERE date BETWEEN "20230412 00:00:00" AND "20230412 23:59:59";
コメント
現在コメントはありません。
コメントする
コメント入力

名前 (※ 必須)

メールアドレス (※ 必須 画面には表示されません)

送信