teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

質問事項に対する返答と詳細の説明

2020/12/30 14:28

投稿

NobIshi
NobIshi

スコア1

title CHANGED
@@ -1,1 +1,1 @@
1
- Updateされたデータを取り出すSQLを教えてください。
1
+ 修正が入ったデータを取り出すSQLを教えてください。
body CHANGED
@@ -10,4 +10,48 @@
10
10
  データ取得の列以外で重複行を取りだして、重複していない行を比較するようにするのかと考えてみましたが、よくわかりませんでした。
11
11
 
12
12
  ### 補足情報(FW/ツールのバージョンなど)
13
- SQLITE3
13
+ SQLITE3
14
+
15
+ ### 20201230 追記
16
+ 期待する出力は、前日にinsertした内容と比較して、日付以外で変更があれば、そのその変更前の行と変更後の行を取り出すことができればと考えています。
17
+ insertされたリスト
18
+ | データ取得 | 社員番号 | 名前 | 所属部署 | 役職 | 営業所名 |
19
+ | ------ | ------ | ------ | ------ | ------ | ------ |
20
+ | 20201201 | 3xxx001 | SQL太郎 | 営業部 | 課長 | 東京 |
21
+ | 20201201 | 3xxx001 | SQL次郎 | 営業部 | 課長 | 東京 |
22
+ | 20201201 | 3xxx001 | SQL三郎 | 営業部 | 課長 | 東京 |
23
+
24
+ 次の日にinsertされた結果
25
+ | データ取得 | 社員番号 | 名前 | 所属部署 | 役職 | 営業所名 |
26
+ | ------ | ------ | ------ | ------ | ------ | ------ |
27
+ | 20201201 | 3xxx001 | SQL太郎 | 営業部 | 課長 | 東京 |
28
+ | 20201201 | 3xxx001 | SQL次郎 | 営業部 | 課長 | 東京 |
29
+ | 20201201 | 3xxx001 | SQL三郎 | 営業部 | 課長 | 東京 |
30
+ | 20201202 | 3xxx001 | SQL太郎 | 営業部 | 課長 | 東京 |
31
+ | 20201202 | 3xxx001 | SQL次郎 | 営業部 | 課長 | 神奈川 |
32
+ | 20201202 | 3xxx001 | SQL三郎 | 営業部 | 課長 | 東京 |
33
+
34
+ 取り出したい修正箇所が分かるリスト
35
+ | データ取得 | 社員番号 | 名前 | 所属部署 | 役職 | 営業所名 |
36
+ | ------ | ------ | ------ | ------ | ------ | ------ |
37
+ | 20201201 | 3xxx001 | SQL次郎 | 営業部 | 課長 | 東京 |
38
+ | 20201202 | 3xxx001 | SQL次郎 | 営業部 | 課長 | 神奈川 |
39
+
40
+ このDBの大元は別にあり、毎日その日の最新情報がCSVで送られてくるのを別にDBを作り、そこに毎日データを積み上げていっています。前日送られてきたデータに修正が無ければ全く同じなのですが、修正が入ったとき、それがどこに修正入ったかを知りたいためこのようなことを行っています。大元のDBにアクセスできないがための状況です。
41
+
42
+ > 同一日付、同一人物で、複数件のデータがDLされるんですか?
43
+ →同じ日付であれば同一人物のデータは1件となります。
44
+ > 20201202:神奈川は、どこから発生したのですか?
45
+ →大元のDBに修正が入ったため、次の日に送られてくるデータが修正されています。
46
+ > 比較対象データは、社員番号がキーですか?
47
+ →社員番号がキーとなります。
48
+ > 比較対象は、常に、前日のデータですか?
49
+ →常に毎日送られてくるわけでもないので、前日のデータとはならないこともあります。ただ、一個前に送られてきたデータです。
50
+ > 前日のデータがない場合は、あり得ますか?
51
+ →あり得ます。
52
+ > 前日のデータがなく、それ以前のデータが存在することはありますか?
53
+ →データが積みあがっていくため、以前のデータはあります。同一人物に修正が入ってきた履歴をあとからたどる必要もあり、古いデータも残してあります。
54
+
55
+ 以上です。
56
+
57
+ よろしくお願いします。