回答編集履歴

4

推敲

2020/11/11 06:59

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  from (
12
12
 
13
- select 社員番号, 発令日
13
+ select *
14
14
 
15
15
  ,(select max(発令日)
16
16
 

3

推敲

2020/11/11 06:59

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  元にするテーブルを「異動」テーブルとすると、
8
8
 
9
- select 異動.*, 異動前.異動部署
9
+ select 異動基準.*, 異動前.異動部署
10
10
 
11
11
  from (
12
12
 
@@ -24,11 +24,11 @@
24
24
 
25
25
  from 異動
26
26
 
27
- ) 異動
27
+ ) as 異動基準
28
28
 
29
29
  left join 異動 as 異動前
30
30
 
31
- on 異動.社員番号=異動前.社員番号 and 異動.異動前発令日=異動前.発令日
31
+ on 異動基準.社員番号=異動前.社員番号 and 異動基準.異動前発令日=異動前.発令日
32
32
 
33
33
 
34
34
 

2

冗長だったので訂正

2020/11/11 06:57

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -4,9 +4,11 @@
4
4
 
5
5
  ```SQL
6
6
 
7
- select 異動.*, 異動前.発令日, 異動前.異動部署
7
+ 元にするテーブルを「異動」テーブルとすると、
8
8
 
9
- from 異動 left join (
9
+ select 異動.*, 異動前.異動部署
10
+
11
+ from (
10
12
 
11
13
  select 社員番号, 発令日
12
14
 
@@ -22,14 +24,14 @@
22
24
 
23
25
  from 異動
24
26
 
25
- ) as 異動前情報
27
+ ) 異動
26
-
27
- on 異動.社員番号=異動前情報.社員番号 and 異動.発令日=異動前情報.発令日
28
28
 
29
29
  left join 異動 as 異動前
30
30
 
31
- on 異動前情報.社員番号=異動前.社員番号 and 異動前情報.異動前発令日=異動前.発令日
31
+ on 異動.社員番号=異動前.社員番号 and 異動.異動前発令日=異動前.発令日
32
+
33
+
32
34
 
33
35
  ```
34
36
 
35
- 時間が掛かるようなら、SQL中にある異動前情報をテーブル作成クエリーで作成するとか、インデックスの見直しを行って下さい。
37
+ 時間が掛かるようなら、SQL中にある異動前発令日をテーブル作成クエリーで作成するとか、インデックスの見直しを行って下さい。

1

推敲

2020/11/11 06:55

投稿

sazi
sazi

スコア25327

test CHANGED
@@ -32,4 +32,4 @@
32
32
 
33
33
  ```
34
34
 
35
- 時間が掛かるようなら、SQL中にある異動前情報をテーブル作成クエリーで作成するおういするとか、インデックスの見直しを行って下さい。
35
+ 時間が掛かるようなら、SQL中にある異動前情報をテーブル作成クエリーで作成するとか、インデックスの見直しを行って下さい。