将同一张表两次连接到不同的列

艾哈迈德·古尔扎(Ahmad Gulzar)

我有一张桌子产品和一张桌子位置。产品表具有两列pickLocation和recLocation。在位置表中,我有id和name列。pickLocation和recLocation具有位置表中的ID。我该如何在Codeigniter中加入表格。

这是我的代码

$this->db->select("locations.name as plname");
$this->db->select("locations.name as rcname");
$this->db->join("locations","locations.id=products.pickLocation","LEFT");
$this->db->join("locations","locations.id=products.recLocation","LEFT");

这是产品表

+----+--------------+-------------+
| Id | pickLocation | recLocation |
+----+--------------+-------------+
|  1 |           12 |          23 |
|  2 |           12 |          12 |
+----+--------------+-------------+

这是位置表

+----+-----------+--+
| Id |   name    |  |
+----+-----------+--+
| 12 | Location1 |  |
| 23 | Location2 |  |
+----+-----------+--+

我想要这样的结果

+-----------------------+
| 1 Location1 Location2 |
+-----------------------+
| 2 Location1 Location1 |
+-----------------------+
阿德里安·XL

使用别名。另外,除了join子句外,您的产品表永远不会出现。它也应该在从。

$query = $this->db->select("p.id, l1.name as plname, l2.name as rcname")
                 ->join("location l1", "l1.id = p.pickLocation", "left")
                 ->join("location l2", "l2.id = p.recLocation", "left")
                 ->get("product p"); 

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

两次连接同一张表以在不同列中计数

将同一张表连接两次,然后累加->将实际需要的值加倍

用不同的值两次连接同一张表

Rails在不同的动态范围内两次连接同一张表

左连接同一张表两次但重复一列

使用group by查询同一张表中的同一列两次

在一个查询中两次连接同一张表

如何根据同一张表的引用输出两次具有不同值的列?

在MySQL中两次连接同一张表

两次连接同一张表以查找丢失的数据

两次在同一张表上连接,一次在另一张表上连接(共3个),获取重复项

将同一表中的列连接两次导致未知列问题

如何将两列连接到同一张表

如何将同一列两次添加到不同位置的表中?

对同一张桌子计数两次

两次使用同一张表时获取结果

EF Core 2尝试两次创建同一张表

SQL Server-为什么对同一张表进行两次扫描?

如何使用PXSelectJoinOrderBy联接同一张表两次

在更新中两次打开同一张表

INNER JOIN 两次形成同一张表

联接同一张表两次,没有重复的行

使用两个WHERE条件从同一张表中两次选择一列SQL SERVER

MySQL在同一张表上两次联接给出一半的结果

如何从同一张表的两列中获得一行中的不同结果?

我可以在Android Studio的不同功能中两次初始化同一张图片吗?

在 django 模型上两次指向同一张表是否有意义

在同一张表上针对不同条件多次连接,而在汇总表中一次连接

如何从同一张表中查询同一列但条件不同的两个不同的总和?