2016-07-24 70 views
0

这可能吗?我需要一个SQL语句的结果碰上另一..PHP在另一个SQL语句中运行SQL结果

$result= mysqli_query($dbconn,"Select max(cartid) from cart;"); 
$row = mysqli_fetch_assoc($result); 

$sql1 = "insert into cart(cartid) values('".$row['max(cartid)']."');"; 
mysqli_query($dbconn,$mysql1); 

编辑:

加在我的SQL表来显示什么即时试图做 一个更好的例子这是我的车表enter image description here

这是我的事务表 enter image description here

基本上,我想转让该行WHE将cartid = 5从购物车表中移入交易表中新的交易ID将为5的位置。正如您所见,交易表中还有一个cartid。不知道如何将这个cartid和作为一个新行插入到交易表中。仅供参考,为了得到cartid = 5我想使用 order by cartid desc limit 1以获得购物车表中最后一个可能的行

新的交易表行将看起来像这样。

transactionid outletid nric cartid transactiondate totalbeforediscount totalafterdiscount transactiontime username 
    5   0  0  5   0     0      0     0   0 
+0

是在第一个查询检索数据('$ result'),以然后在第二个使用它的唯一目的 - 或 - 将您使用的是资料在其他地方? – Nicarus

+0

@Nicarus我也会在其他地方使用它 – Marcus

回答

2

您可以将查询合并为一个查询。

请试一试:

INSERT INTO cart(cartid) SELECT MAX(cartid) FROM cart

WORKING DEMO

编辑:

为了插入这样的查询看起来像下面mulitiple值:

INSERT INTO cart(cartid,rowid) SELECT MAX(cartid),MAX(rowid) FROM cart

WORKING DEMO

但我不明白为什么试图插入具有相同的表最大值列。由于你的表已经包含了这些。

EDIT2:

INSERT INTO transaction_table(cartid) SELECT MAX(cartid) FROM cart;

+0

嗯,如果让我说我想插入不同表中的多个值,怎么样?也许这样? “插入购物车(cartid,rowid)从购物车中选择最大(cartid),从行” – Marcus

+0

更新选择最大(rowid)“。查看编辑部分。 – 1000111

+0

如果我的rowid来自另一个表怎么办?对不起,我只是使用示例 – Marcus