首页 > 解决方案 > MySQL加入相同的列名

问题描述

现在我有这个代码:

SELECT * FROM orders, products WHERE product_id=products.id AND `geleverd` = 0

威奇返回如下: 在此处输入图像描述

我也有一个按钮的代码:

echo "<a onclick='return window.confirm(\"Weet je zeker dat  ".$row['merk']." ".$row['model']." geleverd is?\")' href='change_order_status.php?id=". $row['id'] ."' title='Delete Record' data-toggle='tooltip'><span class='glyphicon glyphicon-ok' style='color:black'></span></a>";

但由于某种原因 id 返回 9 而不是 1

这是 $row 的打印输出

Array
(
    [0] => 1
    [id] => 9
    [1] => 2019-1
    [ordernummer] => 2019-1
    [2] => 9
    [product_id] => 9
    [3] => 2
    [aantal] => 2
    [4] => aaa
    [omschrijving] => aaa
    [5] => 0
    [geleverd] => 0
    [6] => 9
    [7] => Samsung
    [merk] => Samsung
    [8] => Tablet S2
    [model] => Tablet S2
    [9] => 1
    [threshold] => 1
)

和:

(
    [0] => 3
    [id] => 9
    [1] => 789
    [ordernummer] => 789
    [2] => 9
    [product_id] => 9
    [3] => 10
    [aantal] => 10
    [4] => test
    [omschrijving] => test
    [5] => 0
    [geleverd] => 0
    [6] => 9
    [7] => Samsung
    [merk] => Samsung
    [8] => Tablet S2
    [model] => Tablet S2
    [9] => 1
    [threshold] => 1
)

如何修复第一行的 ID 为 1 而不是 9,第二行的 ID 为 3 而不是 9

标签: mysqljoin

解决方案


您需要使用Alias表格,并组合/重命名您需要的列。

SELECT o.id as orderId, p.id as productId, -all the columns you need with the alias first- FROM orders as o, products as p WHERE o.product_id=p.id AND `geleverd` = 0

推荐阅读