繁体   English   中英

简单选择查询中返回的行ID不正确

[英]Incorrect row ID returned in simple select query

我正在使用Codeigntier来运行这样的查询:

$query = $this->db->query("SELECT users.*, user_profiles.* FROM users, user_profiles WHERE " . "users.id = $user_id AND user_profiles.user_id = $user_id");
$row = $query->row();

我已放置回显以获取最后一个查询$this->db->last_query() 这表现了:

SELECT users.*, user_profiles.* FROM users, user_profiles WHERE users.id = 6850 AND user_profiles.user_id = 6850

它返回的结果是:

object(stdClass)[24]
  public 'id' => string '6849' (length=4)

结果显示的id是6849 我差点摔倒椅子了! 我在MySQL数据库上运行了相同的查询,针对完全相同的查询返回的ID为6850 6850是正确的ID。

我不知道如何调试它,因为这是最简单的查询。 任何帮助表示赞赏。

明确选择您的列,并使用AS *something*别名。 然后检查ID。

由于未指定列,因此可能显示的是表user_profiles的ID,而不是您期望的users表中的实际用户ID。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM