php - Codeigniter LEFT JOIN 未按预期工作
问题描述
我的左连接不起作用。我想要从消息到输出的任何内容,但如果回复中没有任何内容,则将其留空。
我已经尝试过直接使用 mySQL(见下文),最初使用的是 codeigniter 查询生成器。
我已经验证了所有 SQL 字段。
$this->db->select('messages.*, replies.*');
$this->db->from('messages');
$this->db->join('replies', 'replies.messageID = messages.id', 'left');
$query = $this->db->get();
$query = $this->db->query("SELECT messages.*, replies.*
FROM messages
LEFT JOIN replies ON replies.messageID = messages.id");
[result_id] => mysqli_result Object
(
[current_field] => 0
[field_count] => 9
[lengths] =>
[num_rows] => 1
[type] => 0
)
[result_array] => Array
(
)
[result_object] => Array
(
)
[custom_result_object] => Array
(
)
[current_row] => 0
[num_rows] =>
[row_data] =>
解决方案
你可以尝试使用RIGHT JOIN
.
或者
$query = $this->db->query("SELECT messages.*, replies.*
FROM replies
LEFT JOIN messages ON replies.messageID = messages.id");
推荐阅读
- eclipse - Eclipse 错误 - 为 C:\WINDOWS\system32\config\systemprofile 创建目录失败
- jquery - jqGrid 5.5.0 中的错误
- android - ApiException:10:在 com.google.android.gms.common.internal.ApiExceptionUtil.fromStatus(com.google.android.gms:play-services-base@@17.1.0:4)
- react-native - 反应原生将实时记录数据转换为可写的base64?
- csv - 使用类和 csv 文件进行转换
- c++ - C++ 编译器在显示我的类对象时如何找到最接近的类型转换?
- python - “If”和“Else”语句发生在同一个“for”语句中 - Python
- python - 如何让我当前的代码使用 Multithreading/concurrent.futures?
- assembly - 模拟器在运行以下代码时停止
- azure-logic-apps - 授权 Logic App Outlook API 连接到共享邮箱