【问题标题】:MySQL join same column name [duplicate]MySQL加入相同的列名[重复]
【发布时间】:2019-07-11 06:08:34
【问题描述】:

现在我有这个代码:

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

Wich 返回如下:

我也有这个按钮的代码:

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

【问题讨论】:

    标签: mysql join


    【解决方案1】:

    您需要为表格使用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
    

    【讨论】:

      猜你喜欢
      • 2013-06-04
      • 2013-05-30
      • 1970-01-01
      • 2014-08-20
      • 2014-11-09
      • 2012-10-03
      • 2015-02-27
      • 2017-03-26
      • 2013-05-26
      相关资源
      最近更新 更多