簡體   English   中英

Codeigniter $ query-> result()返回奇怪的結果

[英]Codeigniter $query->result() returns strange results

如此寧靜的代碼使我在最后一個小時內發瘋……我有這個模型,應該從數據庫返回所有非活動記錄

    $query = $this->db->get($tableName);
    echo $this->db->last_query();
    var_dump($query->result());

$this->db->last_query()輸出為

SELECT * FROM `locations` LEFT JOIN `provinces` ON `provinces`.`id_province` = `locations`.`id_province` LEFT JOIN `countries` ON `countries`.`id_country` = `provinces`.`id_country` LEFT JOIN `statuses` ON `statuses`.`id_status` = `locations`.`id_status` WHERE `locations`.`active` = '0' ORDER BY `locations`.`id_location` DESC LIMIT 50

如果我在phpmyadmin中運行完全相同的查詢,則會得到正確的結果

在此處輸入圖片說明

但是當我var_dump data var_dump($query->result()); 我得到以下結果

array (size=50)
  0 => 
    object(stdClass)[61]
      public 'unique_id' => string 'OWYwYjBmNm' (length=10)
      public 'active' => string '1' (length=1)
      public 'owner_name' => string 'Cleve Greenfelder' (length=17)
  1 => 
    object(stdClass)[62]
      public 'unique_id' => string 'YWY4YmMzMm' (length=10)
      public 'active' => string '1' (length=1)
      public 'owner_name' => string 'Bradford Hyatt' (length=14)

為什么/如何將此活動狀態從0覆蓋為1? 如果您需要任何其他信息,請告訴我,我會提供。 謝謝!

一旦我寫了一個問題,答案很快就出現在我的腦海:)表國家/地區也有活動字段,因此該字段會覆蓋已啟用的活動狀態。 我需要指定字段,並且在查詢中有名稱才能獲得正確的結果

$fields = 'unique_id, locations.active as active, ....';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM