回答編集履歴
4
コード追記
test
CHANGED
@@ -52,7 +52,7 @@
|
|
52
52
|
|
53
53
|
WHERE TData.FData Like "*" & TReplace.Fld1 & "*"
|
54
54
|
|
55
|
-
ORDER BY TReplace.ID) Q
|
55
|
+
ORDER BY TReplace.ID DESC) AS Q
|
56
56
|
|
57
57
|
SET Q.FData = Replace(Q.FData,Q.Fld1,Q.Fld2,1,-1,1);
|
58
58
|
|
@@ -81,3 +81,33 @@
|
|
81
81
|
参考リンク
|
82
82
|
|
83
83
|
[複数の文字列置換をクエリで一気に実行する-改良版 - hatena chips](https://hatenachips.blog.fc2.com/blog-entry-458.html)
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
追記
|
88
|
+
|
89
|
+
---
|
90
|
+
|
91
|
+
コメントより
|
92
|
+
|
93
|
+
> 実現したかったことは、「FData」に 「Fld1」が含まれていたら「Fld2」の値を返すとなります。
|
94
|
+
|
95
|
+
今回の場合だと「FData」内の文字が一部変換されてしまいました。
|
96
|
+
|
97
|
+
また、TDataテーブルにFData2(空白)のフィールドがあるとして、そこに「Fld2」の値を返せればと考えています。元のフィール「FData」は残したいです。
|
98
|
+
|
99
|
+
|
100
|
+
|
101
|
+
上記のクエリの応用です。
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
```sql
|
106
|
+
|
107
|
+
UPDATE
|
108
|
+
|
109
|
+
(SELECT TData.FData, TData.FData2, TReplace.Fld2 FROM TData, TReplace WHERE TData.FData Like "*" & TReplace.Fld1 & "*" ORDER BY TReplace.ID DESC) AS Q
|
110
|
+
|
111
|
+
SET Q.FData2 = Q.Fld2;
|
112
|
+
|
113
|
+
```
|
3
コード修正
test
CHANGED
@@ -52,7 +52,7 @@
|
|
52
52
|
|
53
53
|
WHERE TData.FData Like "*" & TReplace.Fld1 & "*"
|
54
54
|
|
55
|
-
ORDER BY
|
55
|
+
ORDER BY TReplace.ID) Q
|
56
56
|
|
57
57
|
SET Q.FData = Replace(Q.FData,Q.Fld1,Q.Fld2,1,-1,1);
|
58
58
|
|
2
説明の改善
test
CHANGED
@@ -2,19 +2,19 @@
|
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
|
|
5
|
+
|ID|Fld1|Fld2|
|
6
6
|
|
7
|
-
|--
|
7
|
+
|--|--|--|
|
8
8
|
|
9
|
-
|
|
9
|
+
|1|お母さん&お父さん|母と父|
|
10
10
|
|
11
|
-
|
|
11
|
+
|2|パパママ|母と父|
|
12
12
|
|
13
|
-
|
|
13
|
+
|3|おかあさん&おばあちゃん|母&祖母|
|
14
14
|
|
15
|
-
|
|
15
|
+
|4|お母さん|母|
|
16
16
|
|
17
|
-
|
|
17
|
+
|5|お父さん|父|
|
18
18
|
|
19
19
|
|
20
20
|
|
@@ -54,9 +54,27 @@
|
|
54
54
|
|
55
55
|
ORDER BY Len(TReplace.Fld1) DESC) Q
|
56
56
|
|
57
|
-
SET Q.FData = Replace(
|
57
|
+
SET Q.FData = Replace(Q.FData,Q.Fld1,Q.Fld2,1,-1,1);
|
58
58
|
|
59
59
|
```
|
60
|
+
|
61
|
+
クエリ実行後
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
| ID | FData |
|
66
|
+
|
67
|
+
|--|--|
|
68
|
+
|
69
|
+
|1|○○母と父○○○|
|
70
|
+
|
71
|
+
|2|□母□□父|
|
72
|
+
|
73
|
+
|3|△△△母&祖母△△|
|
74
|
+
|
75
|
+
|4|△△母と父△|
|
76
|
+
|
77
|
+
|
60
78
|
|
61
79
|
|
62
80
|
|
1
間違い修正
test
CHANGED
@@ -2,17 +2,19 @@
|
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
| ID | F
|
5
|
+
| ID | Fld1 | Fld2 |
|
6
6
|
|
7
|
-
|--|--|
|
7
|
+
|----|--------------------------|----------|
|
8
8
|
|
9
|
-
| 1 |
|
9
|
+
| 1 | お母さん&お父さん | 母と父 |
|
10
10
|
|
11
|
-
| 2 |
|
11
|
+
| 2 | パパ ママ | 母と父 |
|
12
12
|
|
13
|
-
| 3 |
|
13
|
+
| 3 | おかあさん&おばあちゃん | 母&祖母 |
|
14
14
|
|
15
|
-
| 4 |
|
15
|
+
| 4 | お母さん | 母 |
|
16
|
+
|
17
|
+
| 5 | お父さん | 父 |
|
16
18
|
|
17
19
|
|
18
20
|
|