質問編集履歴
4
行数追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -7,6 +7,8 @@
|
|
7
7
|
しかし他の列(固有IDの数、speedの合計)はすべて同じで、行数も増減ありません。
|
8
8
|
stringで保存しているのに、INSERT, OVERWRITEしただけで値が変わってしまうことはありますか?
|
9
9
|
|
10
|
+
行数は約11億件です。
|
11
|
+
|
10
12
|
元データ テーブル
|
11
13
|
ID string
|
12
14
|
latitude string
|
3
分かりやすく書き替えました
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
小数点2桁以下
|
1
|
+
Stringで保存した小数点の列、INSERT OVERWRITEしたテーブルで総和をとったところ小数点2桁以下で合計が異なる
|
body
CHANGED
File without changes
|
2
クエリ修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -43,7 +43,7 @@
|
|
43
43
|
speed,
|
44
44
|
<その他データの保管処理、計算処理など
|
45
45
|
latitude,longitudeは一切計算していません>
|
46
|
-
FROM
|
46
|
+
FROM new table
|
47
47
|
|
48
48
|
検算のため列ごとにカウントしたり挿話を取りました。
|
49
49
|
SELECT COUNT(*) FROM new table
|
1
どのような計算をしたか、のせました。ありがとうございます。
title
CHANGED
File without changes
|
body
CHANGED
@@ -20,6 +20,44 @@
|
|
20
20
|
latitude string
|
21
21
|
longitude string
|
22
22
|
speed string
|
23
|
+
d_speed
|
24
|
+
ma_speed
|
23
25
|
・
|
26
|
+
|
27
|
+
new tableに新たな列を作り、INSERT OVERWRITEしています。
|
28
|
+
|
29
|
+
INSERT INTO new table
|
30
|
+
ID string,
|
31
|
+
latitude,
|
32
|
+
longitude,
|
33
|
+
speed,
|
34
|
+
<その他データの保管処理、計算処理など
|
35
|
+
latitude,longitudeは一切計算していません>
|
36
|
+
FROM old table
|
37
|
+
|
38
|
+
|
39
|
+
INSERT OVERWRITE new table
|
40
|
+
ID string,
|
41
|
+
latitude,
|
42
|
+
longitude,
|
43
|
+
speed,
|
44
|
+
<その他データの保管処理、計算処理など
|
45
|
+
latitude,longitudeは一切計算していません>
|
46
|
+
FROM old table
|
47
|
+
|
48
|
+
検算のため列ごとにカウントしたり挿話を取りました。
|
49
|
+
SELECT COUNT(*) FROM new table
|
50
|
+
SELECT COUNT(*) FROM old table
|
24
|
-
|
51
|
+
→一致
|
52
|
+
|
53
|
+
SELECT COUNT (DISTINCT ID) FROM new table
|
54
|
+
SELECT COUNT (DISTINCT ID) FROM old table
|
25
|
-
|
55
|
+
→一致
|
56
|
+
|
57
|
+
SELECT SUM(latitude) FROM new table
|
58
|
+
SELECT SUM(latitude) FROM old table
|
59
|
+
→小数点二けた以下が不一致
|
60
|
+
|
61
|
+
SELECT SUM(speed) FROM new table
|
62
|
+
SELECT SUM(speed) FROM old table
|
63
|
+
→一致
|