ऐसा करने के लिए आप कोडनिर्देशक के उप क्वेरी तरीके का उपयोग कर सकते हैं इस उद्देश्य के लिए आपको कोडनिर्देशक को हैक करना होगा। इस तरह सिस्टम/डेटाबेस/DB_active_rec.php पर जाएं इन कार्यों से सार्वजनिक या संरक्षित कीवर्ड निकालें
public function _compile_select($select_override = FALSE)
public function _reset_select()
अब सबक्वायरी लेखन उपलब्ध है और अब यहां सक्रिय रिकॉर्ड के साथ आपकी क्वेरी है
$data = array(
'COUNT(B.event) AS Calls',
'B.ID'
);
$this->db
->select($data)
->from('TableB AS B')
->like('B.event','call','both')
->where('`Time` >=',1360540800)
->where('`Time` <=',1361232000)
->group_by('B.ID');
$subQuery = $this->db->_compile_select();
$this->db->_reset_select();
unset($data);
$data = array(
'A.ID',
'A.fName',
'A.lName',
'COALESCE (B.calls, 0) AS Calls'
);
$this->db
->select($data)
->from('TableA AS A')
->join("$subquery")
->like('A.State','SENT','both')
->or_like('A.State','SET','both');
मैंने दोनों को पसंद किया है जो आप अपनी आवश्यकताओं के अनुसार कर सकते हैं। नोट:उप प्रश्नों का उपयोग करते समय आपको उपयोग करना चाहिए
$this->db->from('myTable')
के बजाय
$this->db->get('myTable')
जो क्वेरी चलाता है।