2011-05-09 119 views
0

我有兩個SQL查詢:MySQL數據插入到表

$query0=mysql_query("SELECT caseNumber FROM shipped_data WHERE palette='P0' AND shipInvoiceNumber='2011/229'"); 
$query1=mysql_query("SELECT caseNumber FROM shipped_data WHERE palette='P1' AND shipInvoiceNumber='2011/229'");

,並使用下面的PHP腳本來獲取數據,

while($res0=mysql_fetch_array($query0)) 
{ 
    $r0=$res0['caseNumber']; 
    $q0=mysql_query("INSERT INTO pallet (P00) VALUES ('$r0')")or die("Error"); 
} 
while($res1=mysql_fetch_array($query1)) 
{ 
    print $r1=$res1['caseNumber']; 
    $q1=mysql_query("INSERT INTO pallet (P01) VALUES ('$r1')")or die("Error"); 
} 

這是結果:

首先查詢插入行第1個查詢插入coloumn2數據的第11-20行。

我需要的是行1-10也插在列2,而不是排11-20

我怎樣才能做到這一點?

+0

plz幫助我們...... – Tharindu 2011-05-09 09:01:56

+0

我不明白你想做什麼。請在插入查詢之前和插入之後告訴我們您的表的狀態。 – Elorfin 2011-05-09 09:12:32

+0

這是我的輸出http://oi54.tinypic.com/35cr4tz.jpg ....我想這樣做:http://oi55.tinypic.com/ajmcuf.jpg – Tharindu 2011-05-09 10:16:43

回答

0

我可能會幫助你從不同的角度看待你的問題。您也可以執行您的需求,而無需循環查看記錄。你可以用PHP執行下面的SQL查詢,或者 - 如果你有能力 - 把它放在存儲過程中,然後調用它。

以下SQL與您的PHP腳本相同。

INSERT INTO pallet (P00) 
    SELECT caseNumber 
    FROM shipped_data 
    WHERE palette='P0' 
     AND shipInvoiceNumber='2011/229'; 

INSERT INTO pallet (P01) 
    SELECT caseNumber 
    FROM shipped_data 
    WHERE palette='P1' 
     AND shipInvoiceNumber='2011/229'; 
+0

這是我的輸出http: //oi54.tinypic.com/35cr4tz.jpg ....我想這樣做:http://oi55.tinypic.com/ajmcuf.jpg – Tharindu 2011-05-09 10:15:25

+0

這是我的輸出http://oi54.tinypic.com /35cr4tz.jpg ....我想這樣做:http://oi55.tinypic.com/ajmcuf.jpg – Tharindu 2011-05-09 10:16:56

+0

我很抱歉,但我相信你的表設置有問題。請問你的目的是什麼?也許我可以幫助你提出一個比現在更好的解決方案,因爲坦率地說,這看起來不太好。 – 2011-05-09 10:27:55