回答編集履歴

3

追記

2020/11/17 09:20

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -32,7 +32,7 @@
32
32
 
33
33
  select Date_a,Value_a,Date_b,Value_b
34
34
 
35
- FROM table_a JOIN table_b
35
+ FROM table_a left JOIN table_b
36
36
 
37
37
  ON table_a.Date_a >= table_b.Date_b
38
38
 
@@ -44,4 +44,6 @@
44
44
 
45
45
  )
46
46
 
47
+ or table_b.Date_b is null
48
+
47
49
  ```

2

追記

2020/11/17 09:20

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  select table_a.Date_a, MAX(table_b.Date_b) max_Date_b
12
12
 
13
- FROM table_a JOIN table_b
13
+ FROM table_a left join table_b
14
14
 
15
15
  ON table_a.Date_a >= table_b.Date_b
16
16
 
@@ -20,8 +20,28 @@
20
20
 
21
21
  on table_a.Date_a=map.Date_a
22
22
 
23
- inne join table_b
23
+ left join table_b
24
24
 
25
25
  on map.max_Date_b=table_b.Date_b
26
26
 
27
27
  ```
28
+
29
+ 若しくは、1:多で結合し、条件によって絞り込む
30
+
31
+ ```SQL
32
+
33
+ select Date_a,Value_a,Date_b,Value_b
34
+
35
+ FROM table_a JOIN table_b
36
+
37
+ ON table_a.Date_a >= table_b.Date_b
38
+
39
+ where table_b.Date_b = (
40
+
41
+ select max(Date_b) from table_b
42
+
43
+ where Date_b <= table_a.Date_a
44
+
45
+ )
46
+
47
+ ```

1

追記

2020/11/17 09:19

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -1,4 +1,4 @@
1
- table_aとtable_b を1:1で結合するためには、橋渡しする情報を作成する必要があります。
1
+ table_aとtable_b を1:1で結合するためには、直接の結合が出来ない為、橋渡しする情報を作成する必要があります。
2
2
 
3
3
 
4
4