簡體   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