質問編集履歴
5
少々、文章に追記致しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -17,6 +17,10 @@
|
|
17
17
|
5.'---'はカラムが無いイメージです。
|
18
18
|
|
19
19
|
6.TempTBLは、CSVから読み込んだ一時TABLEです。
|
20
|
+
|
21
|
+
7.CSVで取得したcode,sidをC_TABLEとS_TABLEへ登録致します。
|
22
|
+
|
23
|
+
8.S_TABLEへ登録する際は、GrpNo内で重複しないようにすることとなっております。
|
20
24
|
|
21
25
|
|
22
26
|
|
4
少々、文章を訂正致しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
|
11
11
|
2.PHP は Symfony を利用します。
|
12
12
|
|
13
|
-
3.'S_TABLE'にデータを入れる為のSQLが知りたいです。
|
13
|
+
3.'S_TABLE'にデータを入れる為のSQLが知りたいです。(←ご教授頂きたい場所)
|
14
14
|
|
15
15
|
4.全てのカラムデータは複数ある想定です。
|
16
16
|
|
3
少々、文章を訂正致しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,17 +6,17 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
|
9
|
+
1.MySQLを利用します。
|
10
10
|
|
11
|
-
|
11
|
+
2.PHP は Symfony を利用します。
|
12
12
|
|
13
|
-
|
13
|
+
3.'S_TABLE'にデータを入れる為のSQLが知りたいです。
|
14
14
|
|
15
|
-
|
15
|
+
4.全てのカラムデータは複数ある想定です。
|
16
16
|
|
17
|
-
|
17
|
+
5.'---'はカラムが無いイメージです。
|
18
18
|
|
19
|
-
|
19
|
+
6.TempTBLは、CSVから読み込んだ一時TABLEです。
|
20
20
|
|
21
21
|
|
22
22
|
|
@@ -55,8 +55,6 @@
|
|
55
55
|
|
56
56
|
|
57
57
|
◆ご質問にあったカラムが無い('---')について
|
58
|
-
|
59
|
-
G_TABLE は、GrpNoを持っています。
|
60
58
|
|
61
59
|
I_TABLEは、GrpNo,InfoNoを持っています。
|
62
60
|
|
@@ -132,7 +130,7 @@
|
|
132
130
|
|
133
131
|
SQLで完結させたいのですが、一応、PHP 4(sympony)を利用しております。
|
134
132
|
|
135
|
-
特に知りたい部分は、
|
133
|
+
特に知りたい部分は、【3.】のSQL、S_TABLEを作成するSQLが知りたいです。
|
136
134
|
|
137
135
|
|
138
136
|
|
2
私なりに勉強した想定SQLを追記してみました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -108,6 +108,22 @@
|
|
108
108
|
|
109
109
|
AND C.code = T.Code ;
|
110
110
|
|
111
|
+
もしくは
|
112
|
+
|
113
|
+
今日、勉強したてなのですが
|
114
|
+
|
115
|
+
下記の方が正解に近いかな?と考えております。
|
116
|
+
|
117
|
+
INSERT INTO S_TABLE ( GrpNo, INo, id, sidm )
|
118
|
+
|
119
|
+
SELECT I.GrpNo, I.INo, C.id, T.sidm T.nnn
|
120
|
+
|
121
|
+
FROM TempTBL as T
|
122
|
+
|
123
|
+
INNER JOIN C_TABLE as C ON T.code = C.Code
|
124
|
+
|
125
|
+
INNER JOIN I_TABLE as I ON C.INo = I.INo;
|
126
|
+
|
111
127
|
```
|
112
128
|
|
113
129
|
|
1
質問への追記・修正のご依頼、ありがとうございます。追記致しました。宜しくお願い致します。
test
CHANGED
File without changes
|
test
CHANGED
@@ -18,25 +18,59 @@
|
|
18
18
|
|
19
19
|
・TempTBLは、CSVから読み込んだ一時TABLEです。
|
20
20
|
|
21
|
+
|
22
|
+
|
21
|
-
|
23
|
+
(table\カラム) | GrpNo | InfoNo | id | code | sid |
|
24
|
+
|
25
|
+
I_TABLE | GNo | INo | --- | --- | --- |
|
26
|
+
|
27
|
+
C_TABLE | --- | INo | xxx | cd | --- |
|
28
|
+
|
29
|
+
TempTBL | --- | --- | --- | cd | nnn |
|
30
|
+
|
31
|
+
↓ ↓ ↓
|
32
|
+
|
33
|
+
S_TABLE | GNo | INo | xxx | --- | nnn |
|
22
34
|
|
23
35
|
|
24
36
|
|
25
|
-
(table\カラム) | GrpNo | InfoNo | id | code | sid |マージFlg |
|
26
37
|
|
27
|
-
G_TABLE | GNo | --- | --- | --- | --- | --- |
|
28
38
|
|
29
|
-
|
39
|
+
◆ご質問にあったCSVのサンプルについて
|
30
40
|
|
31
|
-
|
41
|
+
codeとsidの2列となっております。
|
32
42
|
|
33
|
-
|
43
|
+
cd_1,nnn_1
|
34
44
|
|
35
|
-
|
45
|
+
cd_2,nnn_2
|
36
46
|
|
37
|
-
|
47
|
+
:
|
38
48
|
|
49
|
+
|
50
|
+
|
51
|
+
◆ご質問にあったS_TABLEについて
|
52
|
+
|
53
|
+
既存TABLEであり、データは入っております。
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
◆ご質問にあったカラムが無い('---')について
|
58
|
+
|
59
|
+
G_TABLE は、GrpNoを持っています。
|
60
|
+
|
61
|
+
I_TABLEは、GrpNo,InfoNoを持っています。
|
62
|
+
|
63
|
+
C_TABLEは、InfoNo,id,codeを持っています。
|
64
|
+
|
65
|
+
TempTBLは、一時的に作成するのですが、code,sidを持っています。
|
66
|
+
|
67
|
+
↓
|
68
|
+
|
69
|
+
上記よりSQLを使い、
|
70
|
+
|
39
|
-
S_TABLE
|
71
|
+
S_TABLEへ、GrpNo,InfoNo,id,sidを登録したいです。
|
72
|
+
|
73
|
+
|
40
74
|
|
41
75
|
|
42
76
|
|
@@ -59,8 +93,6 @@
|
|
59
93
|
|
60
94
|
|
61
95
|
```私が想定しているSQL
|
62
|
-
|
63
|
-
(「G_TABLE」「(TempTBL※)」「マージFlg」は使っていません)
|
64
96
|
|
65
97
|
CREATE TEMPORARY TABLE `TempTBL;
|
66
98
|
|