回答編集履歴

2

再度修正

2020/10/05 07:40

投稿

sousuke
sousuke

スコア3828

test CHANGED
@@ -44,15 +44,17 @@
44
44
 
45
45
  UPDATE T_A AS A
46
46
 
47
- LEFT JOIN T_A AS B ON A.StoreID = B.StoreID
47
+ INNER JOIN T_A AS B ON A.StoreID = B.StoreID
48
48
 
49
- SET A.numCount = Nz([A].[numCount],0)+Nz([B].[num],0);
49
+ SET A.numCount = Nz([A].[numCount],0)+Nz([B].[num],0)
50
+
51
+ where B.name='aaa';
50
52
 
51
53
 
52
54
 
53
55
  ```
54
56
 
55
- StoreID=3をnullにしたいならwhere B.num=1入れて
57
+ StoreID=3をnullにしたいならwhere句にB.num=1入れて
56
58
 
57
59
  あとこれやるときは先にリセット用の更新クエリも走らせる必要あるかな
58
60
 

1

間違い訂正

2020/10/05 07:40

投稿

sousuke
sousuke

スコア3828

test CHANGED
@@ -29,3 +29,41 @@
29
29
  一行ずつupdateされるイメージで式を書くとsumやcount相当の更新クエリを
30
30
 
31
31
  書くことができます。
32
+
33
+
34
+
35
+ ### 訂正
36
+
37
+ 間違えてたので訂正
38
+
39
+ num=1確定ならnumを積み上げる感じで書けばいいかな
40
+
41
+
42
+
43
+ ```sql
44
+
45
+ UPDATE T_A AS A
46
+
47
+ LEFT JOIN T_A AS B ON A.StoreID = B.StoreID
48
+
49
+ SET A.numCount = Nz([A].[numCount],0)+Nz([B].[num],0);
50
+
51
+
52
+
53
+ ```
54
+
55
+ StoreID=3をnullにしたいならwhere B.num=1入れて
56
+
57
+ あとこれやるときは先にリセット用の更新クエリも走らせる必要あるかな
58
+
59
+
60
+
61
+ ```sql
62
+
63
+ UPDATE T_A AS A
64
+
65
+ SET A.numCount = null;
66
+
67
+
68
+
69
+ ```