回答編集履歴

1

回答を追記

2016/04/21 06:47

投稿

KiyoshiMotoki
KiyoshiMotoki

スコア4791

test CHANGED
@@ -11,3 +11,49 @@
11
11
 
12
12
 
13
13
  [https://dev.mysql.com/doc/refman/5.6/ja/insert.html](https://dev.mysql.com/doc/refman/5.6/ja/insert.html)
14
+
15
+
16
+
17
+ ---
18
+
19
+
20
+
21
+ 以下のSQL文で、期待する動作になるかと思います。
22
+
23
+ ```sql
24
+
25
+ INSERT INTO table1 (item_code, addr, maker, maker_name)
26
+
27
+ SELECT '$mail[item_code]', '$mail[addr]', maker, maker_name
28
+
29
+ FROM table2 WHERE goods_code = '$mail[item_code]';
30
+
31
+ ```
32
+
33
+ [https://dev.mysql.com/doc/refman/5.6/ja/insert-select.html](https://dev.mysql.com/doc/refman/5.6/ja/insert-select.html)
34
+
35
+
36
+
37
+ ただし、
38
+
39
+ > table1 に item_code, addr, maker, maker_name**など**のカラムがありまして
40
+
41
+
42
+
43
+ とあるので、`table1`テーブルにインサートしたいカラムを増やす際は、1行目の
44
+
45
+ ```sql
46
+
47
+ INSERT INTO table1 (...)
48
+
49
+ ```
50
+
51
+ 部分と、2行目の
52
+
53
+ ```sql
54
+
55
+ SELECT ...
56
+
57
+ ```
58
+
59
+ 部分に指定するカラムの数と順番を揃えるようにしてください。