2016-03-26 147 views
1

我有一個名爲股票銷售MySQL表具有3列,我想用一個語句插入數據。使單個插入語句

"INSERT INTO stock_sales (size) SELECT size FROM stock_avail WHERE id='5957'; 
"INSERT INTO stock_sales (transactionid, date) VALUES ('$bill','$date')"; 

回答

1

嘗試:

INSERT INTO stock_sales (size, transactionid, date) 
    SELECT size, '$bill', '$date' 
    FROM stock_avail 
    WHERE id='5957' 

INSERT INTO stock_sales (transactionid, date, size) 
    VALUES ('$bill', '$date', (SELECT size FROM stock_avail WHERE id='5957')) 
+0

謝謝。它的工作:-) – user3716007

+0

問題是,我不清楚。我想到了多重查詢。但是,這個很好。 ':)' –

+0

我想重定向到自動add_sales.php頁面後成功插入數據。這裏是我的聲明: $ sql =「INSERT INTO stock_sales(transactionid,date,size) VALUES('$ bill','$ date',(SELECT size,FROM stock_avail WHERE id ='5957'))」; 如果(mysqli_query($鏈路,$ SQL)){ 回聲 「Back to Sales」; – user3716007

2
$sqlQuery = "INSERT INTO stock_sales (size) SELECT size FROM stock_avail WHERE id='5957';"; 
$sqlQuery. = "INSERT INTO stock_sales (transactionid, date) VALUES ('$bill','$date')"; 

mysqli_multi_query($con,$sqlQuery); 

mysqli_multi_query()函數執行對 數據庫中的一個或多個查詢。查詢以分號分隔。

欲瞭解更多信息,請點擊Mysqli_Multi_Query - W3 Schools

+0

第二個說法是不工作: – user3716007

+0

什麼錯誤你得到@ user3716007? ? –

+0

您的代碼會插入兩個新行。那是你要的嗎?或者你想只將它插入一個新行? –