2023.04.12  

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

SQL    

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

YYYYMMDD文字列型が同じ場合はデータが取得できる。

しかし、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";
コメント
現在コメントはありません。
コメントする
コメント入力

名前 (※ 必須)

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

送信