2013-04-26 17 views
0

我有3個表 和執行的陣列刀片陣列到MySQL爲多張的行

$result = mysql_query("Select * from table_3"); 
while($r[] = mysql_fetch_assoc($result)); 
echo "<PRE>"; 
print_r($r); 
echo "<PRE>"; 

的輸出是:

Array 
(
[0] => Array 
    (
     [batch_id] => 1 
     [seq_id] => 1 
     [q_id] => 2046 
     [a1] => 0 
     [a2] => 1 
     [a3] => 2 
     [a4] => 3 
     [a5] => 4 

    ) 

[1] => Array 
    (
     [batch_id] => 1 
     [seq_id] => 2 
     [q_id] => 2046 
     [a1] => 0 
     [a2] => 2 
     [a3] => 1 
     [a4] => 3 
     [a5] => 4   
     ) 
[2] => Array 
    (
     [batch_id] => 1 
     [seq_id] => 3 
     [q_id] => 2046 
     [a1] => 2 
     [a2] => 0 
     [a3] => 2 
     [a4] => 2 
     [a5] => 1 
    ) 

我需要陣列插入成兩個mysql的表。有括號的行是我需要插入的例子

table_1的結構:

table_1.id應該是數組的batch_id + seq_id(例如, 11用於數組[0])。

table_1.s_id獲得硬編碼

爲TABLE_2
id | s_id | submit_time 
----------------------------------- 
2205 | 80  | 1360051287 
2214 | 80  | 1360811596 
(11) | (80) | (1351024912) 
(12) | (80) | (1359741512) 
(13) | (80) | (1356573212) 

結構:

table_2.id是自動遞增

id | r_id | q_id | c_id | ranking 
------------------------------------------- 
    18965| 2205 | 2046 | a1 | 0 
    18966| 2205 | 2046 | a2 | 2 
    18967| 2205 | 2046 | a3 | 3 
    18968| 2205 | 2046 | a4 | 1  
    18969| 2205 | 2046 | a5 | 4 
    19965| 2214 | 2046 | a1 | 0 
    19966| 2214 | 2046 | a2 | 1 
    19967| 2214 | 2046 | a3 | 1 
    19968| 2214 | 2046 | a4 | 2  
    19969| 2214 | 2046 | a5 | 3 
(20965)| (11) | (2046) | (a1) | (0) 
(20966)| (11) | (2046) | (a2) | (1) 
(20967)| (11) | (2046) | (a3) | (2) 
(20968)| (11) | (2046) | (a4) | (3) 
(20969)| (11) | (2046) | (a5) | (4) 
(21965)| (12) | (2046) | (a1) | (0) 
(21966)| (12) | (2046) | (a2) | (2) 
(21967)| (12) | (2046) | (a3) | (1) 
(21968)| (12) | (2046) | (a4) | (3) 
(21969)| (12) | (2046) | (a5) | (4) 
(22965)| (13) | (2046) | (a1) | (2) 
(22966)| (13) | (2046) | (a2) | (0) 
(22967)| (13) | (2046) | (a3) | (2) 
(22968)| (13) | (2046) | (a4) | (2) 
(22969)| (13) | (2046) | (a5) | (1) 

有人能教我如何插入呢?

回答

0

我無法理解您如何爲table2生成值。但是對於table_1,爲什麼要將數據轉化爲PHP?您應該使用以下sql命令:

INSERT INTO table_1(id) SELECT CONCAT(batch_id, seq_id) FROM table_3