回答編集履歴

3

コメントを修正

2017/12/11 04:25

投稿

sk_3122
sk_3122

スコア1126

test CHANGED
@@ -54,7 +54,7 @@
54
54
 
55
55
  ```sql
56
56
 
57
- -- Oracle のミリ秒ってどういう扱いでしたっけ… こんなだっけ
57
+ -- ミリ秒扱いは分からないの
58
58
 
59
59
  where targetdate between date(start_date || ' 00:00:00.000') and date(end_date || ' 23:59:59.999')
60
60
 

2

サンプルsqlを修正

2017/12/11 04:25

投稿

sk_3122
sk_3122

スコア1126

test CHANGED
@@ -56,14 +56,14 @@
56
56
 
57
57
  -- Oracle のミリ秒ってどういう扱いでしたっけ… こんなだっけ
58
58
 
59
- where targetdate between 'start_date 00:00:00.000' and 'end_date 23:59:59.999'
59
+ where targetdate between date(start_date || ' 00:00:00.000') and date(end_date || ' 23:59:59.999')
60
60
 
61
61
 
62
62
 
63
- -- それだったらこっちですかね…?
63
+ -- それだったらこっちですかね…? 日付の加算は分からないので仮
64
64
 
65
- where targetdate >= 'start_date 00:00:00'
65
+ where targetdate >= date(start_date || ' 00:00:00')
66
66
 
67
- and targetdate < 'end_date+1 00:00:00'
67
+ and targetdate < (date(end_date || ' 00:00:00') + 1日)
68
68
 
69
69
  ```

1

追記:検索条件には日付型を指定したいのか

2017/12/11 04:23

投稿

sk_3122
sk_3122

スコア1126

test CHANGED
@@ -13,6 +13,22 @@
13
13
  yyyy-MM-dd で持つなら date型にしなくても良いような…
14
14
 
15
15
  (yyyy-M-d とかなら話は別ですが)
16
+
17
+
18
+
19
+ 【追記】
20
+
21
+ すみません、見落としてました。
22
+
23
+
24
+
25
+ > 日付 between 開始列 and 終了列
26
+
27
+
28
+
29
+ 検索条件には日付型を指定したいということなんですかね。
30
+
31
+ であればこれより上 ↑ は無視してください。
16
32
 
17
33
 
18
34