Как выполнить мой SQL-запрос в CodeIgniter

У меня проблема с моим запросом, и мне нужно объединить две таблицы из разных баз данных, теперь моя проблема заключается в том, как я могу выполнить свой запрос. Я получил формат синтаксиса здесь

Сначала перейдите по этой ссылке, чтобы понять, почему мой синтаксис SQL похож на этот
http://www.x-developer.com/php-scripts/sql-connecting-multiple-databases-in-a-single-query


Я использую CodeIgniter, и вот идея моего запроса:
Обратите внимание, как я выбираю свои столбцы: DATABASE_NAME.TABLE_NAME.COLUMN_NAME

$ENROLLEES = $this->load->database('ENROLLEES', TRUE); $ACCOUNTS = $this->load->database('ACCOUNTS', TRUE); $SELECT = "SELECT $ACCOUNTS.BALANCES_TABLE.IDNO, $ACCOUNTS.BALANCES_TABLE.balance"; $FROM = "FROM $ACCOUNTS.BALANCES_TABLE"; $WHERE = "$ACCOUNTS.BALANCES_TABLE.IDNO IN (SELECT $ENROLLEES.ENROLLEES_TABLE.IDNO FROM $ENROLLEES.ENROLLEES_TABLE)"; $SQL = $SELECT ." ". $FROM ." ". $WHERE; 

ОСНОВНАЯ ПРОБЛЕМА: Как выполнить мой запрос?
Если мы сделаем это в CodeIgniter:

 $ENROLLEES->query($SQL); or $ACCOUNTS->query($SQL); 

Как я могу выполнить свой запрос, что Im имеет несколько баз данных? Что я здесь дам
[database]->query($SQL); ?

 $query = $this->db->query($SQL); return $query->result_array(); 

Если общий сервер баз данных имеет логин, который имеет привилегии для обеих баз данных и просто выполняет запрос, похожий на:

 $query = $this->db->query(" SELECT t1.*, t2.id FROM `database1`.`table1` AS t1, `database2`.`table2` AS t2 "); 

В противном случае, я думаю, вам придется запускать 2 запроса отдельно и исправить логику впоследствии.

Я вижу, что @ Þaw упомянул:

 $ENROLLEES = $this->load->database('ENROLLEES', TRUE); $ACCOUNTS = $this->load->database('ACCOUNTS', TRUE); 

CodeIgniter поддерживает несколько баз данных. Вам нужно сохранить ссылку базы данных в отдельной переменной, как вы это делали выше. Пока вы правы / правильны.

Затем вы должны использовать их, как показано ниже:

 $ENROLLEES->query(); $ENROLLEES->result(); 

а также

 $ACCOUNTS->query(); $ACCOUNTS->result(); 

Вместо того, чтобы использовать

 $this->db->query(); $this->db->result(); 

См. Это для справки: http://ellislab.com/codeigniter/user-guide/database/connecting.html