回答編集履歴

3

UPDATE分サブクエリのサンプル投下

2016/09/26 14:04

投稿

Panzer_vor
Panzer_vor

スコア1636

test CHANGED
@@ -53,3 +53,45 @@
53
53
  )
54
54
 
55
55
  ```
56
+
57
+
58
+
59
+ #追記
60
+
61
+ UPDATE〜SET内のサブクエリに触れたので、
62
+
63
+ サブクエリを利用する場合のサンプルも記載します。
64
+
65
+
66
+
67
+ 下記例はテーブル1とテーブル2のidが一致する、
68
+
69
+ テーブル1のnameをテーブル2のnameで上書きする処理です。
70
+
71
+ (テーブルはどちらもid、nameを持つとします)
72
+
73
+ ```SQL
74
+
75
+ UPDATE (
76
+
77
+ SELECT
78
+
79
+ t1.name AS name1
80
+
81
+ , t2.name AS name2
82
+
83
+ FROM
84
+
85
+ table1 t1
86
+
87
+ INNER JOIN table2 t2
88
+
89
+ ON t1.id = t2.id
90
+
91
+ )
92
+
93
+ SET
94
+
95
+ name1 = name2
96
+
97
+ ```

2

インデント修正

2016/09/26 14:04

投稿

Panzer_vor
Panzer_vor

スコア1636

test CHANGED
@@ -28,7 +28,7 @@
28
28
 
29
29
  SU_KANPAN = '100'
30
30
 
31
- , KI_RKSYARYO = '200'
31
+ , KI_RKSYARYO = '200'
32
32
 
33
33
  WHERE
34
34
 
@@ -46,9 +46,9 @@
46
46
 
47
47
  t1.DD_NENTUKI = t2.DD_NENTUKI
48
48
 
49
- AND t1.CD_SYAIN = t2.CD_SYAIN
49
+ AND t1.CD_SYAIN = t2.CD_SYAIN
50
50
 
51
- AND t1.CD_KAISYA = t2.CD_KAISYA
51
+ AND t1.CD_KAISYA = t2.CD_KAISYA
52
52
 
53
53
  )
54
54
 

1

コードミス修正

2016/09/26 13:47

投稿

Panzer_vor
Panzer_vor

スコア1636

test CHANGED
@@ -26,9 +26,9 @@
26
26
 
27
27
  SET
28
28
 
29
- TBJIP19C.SU_KANPAN = '100'
29
+ SU_KANPAN = '100'
30
30
 
31
- , TBJIP19C.KI_RKSYARYO = '200'
31
+ , KI_RKSYARYO = '200'
32
32
 
33
33
  WHERE
34
34