gpt4 book ai didi

php - 使用 PHP 和 SQL 进行多重连接没有结果

转载 作者:行者123 更新时间:2023-11-29 03:38:49 25 4
gpt4 key购买 nike

当我尝试这段代码时:

$this->db->select('customers.customerid, customers.firstname');
$this->db->from('customers');

$this->db->join('orders', 'orders.customerid = customers.customerid');
$this->db->join('order_domains', 'order_domains.orderid = orders.orderid');
$this->db->join('order_hostings', 'order_hostings.orderid = orders.orderid');
$this->db->join('order_servers', 'order_servers.orderid = orders.orderid');


$this->db->group_by('orders.customerid');
$query = $this->db->get();

$domainusers = $query->result();
var_dump($domainusers);

我尝试过使用内部联接,但我尝试的所有操作仍然会返回空结果:

var_dump(); ---> array(0) { }

当我注释掉最后 3 个连接中的两个时:

//$this->db->join('order_hostings', 'order_hostings.orderid = orders.orderid');
//$this->db->join('order_servers', 'order_servers.orderid = orders.orderid');

它将返回结果:

var_dump(); ---> array(1) { [0]=> object(stdClass)#17 (1) { ["customerid"]=> string(1) "1" } }

我在这个项目中使用 codeigniter,有人知道为什么我使用多个连接后它会返回空结果吗?

最佳答案

您可以在多个 block 中使用以下内容:

$this->db->distinct('orders.customerid');
$this->db->from('orders');

$this->db->join('order_domains', 'orders.orderid = order_domains.orderid', 'inner');
$this->db->join('customers', 'customers.customerid = orders.customerid');

$this->db->group_by('orders.customerid');
$query = $this->db->get();

$domainusers = $query->result();
var_dump($domainusers);

关于php - 使用 PHP 和 SQL 进行多重连接没有结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17230808/

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