回答編集履歴
2
再度修正
answer
CHANGED
@@ -21,11 +21,12 @@
|
|
21
21
|
|
22
22
|
```sql
|
23
23
|
UPDATE T_A AS A
|
24
|
-
|
24
|
+
INNER JOIN T_A AS B ON A.StoreID = B.StoreID
|
25
|
-
SET A.numCount = Nz([A].[numCount],0)+Nz([B].[num],0)
|
25
|
+
SET A.numCount = Nz([A].[numCount],0)+Nz([B].[num],0)
|
26
|
+
where B.name='aaa';
|
26
27
|
|
27
28
|
```
|
28
|
-
StoreID=3をnullにしたいならwhere
|
29
|
+
StoreID=3をnullにしたいならwhere句にB.num=1も入れて
|
29
30
|
あとこれやるときは先にリセット用の更新クエリも走らせる必要あるかな
|
30
31
|
|
31
32
|
```sql
|
1
間違い訂正
answer
CHANGED
@@ -13,4 +13,23 @@
|
|
13
13
|
```
|
14
14
|
|
15
15
|
一行ずつupdateされるイメージで式を書くとsumやcount相当の更新クエリを
|
16
|
-
書くことができます。
|
16
|
+
書くことができます。
|
17
|
+
|
18
|
+
### 訂正
|
19
|
+
間違えてたので訂正
|
20
|
+
num=1確定ならnumを積み上げる感じで書けばいいかな
|
21
|
+
|
22
|
+
```sql
|
23
|
+
UPDATE T_A AS A
|
24
|
+
LEFT JOIN T_A AS B ON A.StoreID = B.StoreID
|
25
|
+
SET A.numCount = Nz([A].[numCount],0)+Nz([B].[num],0);
|
26
|
+
|
27
|
+
```
|
28
|
+
StoreID=3をnullにしたいならwhere B.num=1入れて
|
29
|
+
あとこれやるときは先にリセット用の更新クエリも走らせる必要あるかな
|
30
|
+
|
31
|
+
```sql
|
32
|
+
UPDATE T_A AS A
|
33
|
+
SET A.numCount = null;
|
34
|
+
|
35
|
+
```
|