НЕ РАБОТАЕТ ГДЕ В sql INNER ПРИСОЕДИНЯЙТЕСЬ? - PullRequest
0 голосов
/ 18 октября 2011

Я хочу, чтобы данные ГДЕ выбирались с помощью $ find, но они (ГДЕ) не работают в следующем запросе, и мой вывод There is not, как это исправить?

$find="hello";
$query = $this->db->query('
SELECT tour_foreign.name, 
       tour_foreign_residence.name_re, 
       tour_foreign_airline.name_airline, 
       tour_foreign.service, 
       tour_foreign.date_go, 
       tour_foreign.date_back, 
       tour_foreign.term 
FROM   tour_foreign 
       INNER JOIN tour_foreign_residence 
         ON ( tour_foreign.id = tour_foreign_residence.relation ) 
       INNER JOIN tour_foreign_airline 
         ON ( tour_foreign.id = tour_foreign_airline.relation ) 
WHERE  tour_foreign.name LIKE "%' . $find . '%" 
        OR tour_foreign_residence.name_re LIKE "%' . $find . '%"


');

if ($query->num_rows() > 0) {
    foreach ($query->result() as $val) {
        echo $val->name . '<br>';
    }
} else {
    echo 'There is not';
}

1 Ответ

2 голосов
/ 18 октября 2011

У вас есть дополнительная запятая перед WHERE (после tour_foreign_airline.relation).

Редактировать: Я вижу, вы исправили это сейчас, но JOIN все еще выглядит неправильно. Попробуйте это:

INNER JOIN tour_foreign_residence
ON (tour_foreign.id = tour_foreign_residence.relation)
INNER JOIN tour_foreign_airline
ON (tour_foreign.id = tour_foreign_airline.relation)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...