gpt4 book ai didi

php - 为什么MySQL中的Inner Join会返回不相关的信息?

转载 作者:行者123 更新时间:2023-11-29 04:38:08 24 4
gpt4 key购买 nike

我的数据库中有两个表,其中一个是 order另一个是user .

我想提取订单信息以及下订单的关联用户,为此,我使用了 INNER JOIN加入用户名上的两个表。

但是,问题在于,它显示了正确的订单信息,但该用户不是相关用户,而是数据库中的第一条用户记录。

为什么会发生这种情况?

这是我的查询:

    SELECT orders.oid, 
orders.ordernumber,
orders.date_requested,
orders.date_approved,
orders.status,
orders.region,
orders.users_name,
orders.comments,
orders.customShippingAddress,
orders.approval_comments,
orders.approved_by_id,
users.firstname,
users.lastname,
users.address,
users.address2,
users.city,
users.`state`,
users.zip,
users.phonenum,
users.cellnum,
users.officenum,
users.region,
users.shipping_address
FROM orders
INNER JOIN users
ON orders.users_name=users.firstname + ' ' + users.lastname
WHERE orders.oid='$id'";

我不明白为什么这不起作用。谁能给我一些指导?

最佳答案

我猜你想要

ON orders.users_name=CONCAT(users.firstname ,' ',users.lastname)

你的版本

ON orders.users_name=users.firstname + ' ' + users.lastname

可能会在幕后进行一些转换,尝试添加东西,+在 sql server 中连接东西,而不是 mysql

关于php - 为什么MySQL中的Inner Join会返回不相关的信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36391593/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com