gpt4 book ai didi

mysql - 写Mysql Left join 不行?

转载 作者:行者123 更新时间:2023-11-29 12:42:07 31 4
gpt4 key购买 nike

我有这个表

文章

文章ID

文章名称
文章数量
文章_价格
文章数量

订单

orders_id
文章_id
发票 ID
客户 ID

客户

customers_id
客户名称
客户位置
客户办公室

客户发票

当我做这样的事情时

$sql="SELECT customer_name, article_name FROM orders LEFT JOIN articles ON article_id = articles_id LEFT JOIN customers on customer_id = customers_id";

它没有得到任何结果,在一个查询中左连接这两个表的正确方法是什么?

我使用 CI像这样

$this->db->query($sql);

我得到了什么

object(CI_DB_mysql_result)#28 (8) { ["conn_id"]=> resource(31) of type (mysql link persistent) ["result_id"]=> resource(52) of type (mysql result) ["result_array"]=> array(0) { } ["result_object"]=> array(0) { } ["custom_result_object"]=> array(0) { } ["current_row"]=> int(0) ["num_rows"]=> int(2) ["row_data"]=> NULL } 

最佳答案

您需要为您使用的任何表连接指定一个别名,如下所示:

$sql="SELECT c.customer_name, a.article_name FROM orders o 
LEFT JOIN articles a ON o.article_id = a.articles_id
LEFT JOIN customers c on o.customer_id = c.customers_id";

或者您可以使用如下所示的 USING 语法:

$sql="SELECT c.customer_name, a.article_name FROM orders o 
LEFT JOIN articles a ON USING(articles_id)
LEFT JOIN customers c on USING(customer_id);

关于mysql - 写Mysql Left join 不行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25962034/

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