前提・実現したいこと
上記のような入力欄から日付で範囲指定したデータの抽出をしたいです。
なお、テーブルには以下のデータが入っている状態です。
![
例えば、2021-09-20~2021-09-25と検索するとid = 1のデータのみを取り出せるような
動きを意図しています。
そこで下記に示すsql文を書いたのですが、うまく動作してくれていません。
その原因を知りたいです。
該当のソースコード
String sql ="SELECT DISTINCT DAILYREPORT.id, DAILYREPORT.type_id, DAILYREPORT.stuff_id, DAILYREPORT.work_id, DAILYREPORT.created, startTime, endTime, DAILYREPORT.detail, DAILYREPORT.name," +" progress FROM DAILYREPORT" +" INNER JOIN DAILYREPORT_TYPE ON DAILYREPORT_TYPE.id = DAILYREPORT.type_id" +" WHERE DAILYREPORT.created BETWEEN \' " +workingHour.getCreated()+ "\'AND\' " + workingHour.getEnd()+ " \' ";
試したこと
workingHour.getCreated(),workingHour.getEnd()にはそれぞれ入力欄から入れた日付がString型で入っています。
getterで値自体は取得できていることは確認していますが、中身を取り出せてはいないようです。
String sql ="SELECT DISTINCT DAILYREPORT.id, DAILYREPORT.type_id, DAILYREPORT.stuff_id, DAILYREPORT.work_id, DAILYREPORT.created, startTime, endTime, DAILYREPORT.detail, DAILYREPORT.name," +" progress FROM DAILYREPORT" +" INNER JOIN DAILYREPORT_TYPE ON DAILYREPORT_TYPE.id = DAILYREPORT.type_id " +" WHERE DAILYREPORT.created BETWEEN \' " +workingHour.getCreated() + "\' AND\' " +workingHour.getEnd()+ " \' "; List<Map<String,Object>> resultList = jdbcTemplate.queryForList(sql); System.out.println(workingHour.getCreated()); System.out.println(workingHour.getEnd()); System.out.println(resultList);
where以下を下記にしても同様でした。
+" WHERE DAILYREPORT.created BETWEEN '2021-9-20' AND '2021-9-25' ";
where句を書かない場合は全件取得できているので、やはり条件文の書き方がおかしいような気がしますがどうなのでしょう。
String sql ="SELECT DISTINCT DAILYREPORT.id, DAILYREPORT.type_id, DAILYREPORT.stuff_id, DAILYREPORT.work_id, DAILYREPORT.created, startTime, endTime, DAILYREPORT.detail, DAILYREPORT.name," +" progress FROM DAILYREPORT" +" INNER JOIN DAILYREPORT_TYPE ON DAILYREPORT_TYPE.id = DAILYREPORT.type_id "; List<Map<String,Object>> resultList = jdbcTemplate.queryForList(sql); System.out.println(workingHour.getCreated()); System.out.println(workingHour.getEnd()); System.out.println(resultList);
補足情報(FW/ツールのバージョンなど)
Java11
spring boot
spring tool suite
回答1件
あなたの回答
tips
プレビュー