Упростить запрос)

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
Аватара пользователя
mum
Сообщения: 123
Зарегистрирован: 2011.12.15, 19:45
Контактная информация:

Упростить запрос)

Сообщение mum »

Здравствуйте) есть сложности с PDO (учусь)
Хотел реализовать выбор города через автокомплит.
Получилось так

Код: Выделить всё

$res = array();

        if (isset($_GET['term'])) {
            $qtxt ="SELECT city_name_ru FROM {{city}} WHERE city_name_ru LIKE :city_name_ru";
            $command =Yii::app()->db->createCommand($qtxt);
            $command->bindValue(":city_name_ru", '%'.$_GET['term'].'%', PDO::PARAM_STR);
            $res = $command->queryColumn();
            if($res==null)
                {
                    $qtxt ="SELECT city_name_en FROM {{city}} WHERE city_name_en LIKE :city_name_en";
                    $command =Yii::app()->db->createCommand($qtxt);
                    $command->bindValue(":city_name_en", '%'.$_GET['term'].'%', PDO::PARAM_STR);
                    $res = $command->queryColumn();
                }
        }

    echo CJSON::encode($res);
    Yii::app()->end();
Возможно ли при поиске искать сразу в 2ух столбцах?
Аватара пользователя
mum
Сообщения: 123
Зарегистрирован: 2011.12.15, 19:45
Контактная информация:

Re: Упростить запрос)

Сообщение mum »

Так ищет города и на русском и на английском.
P.s
в базе записано так:

Код: Выделить всё

`id`
`id_region
`id_country`
`oid`
`city_name_ru` 
`city_name_en` 
(17849, 1611, 219, 4400, 'Москва', 'Moscow'),
chang
Сообщения: 125
Зарегистрирован: 2010.12.03, 20:01

Re: Упростить запрос)

Сообщение chang »

Код: Выделить всё

SELECT city_name_ru FROM {{city}} WHERE city_name_ru LIKE :city_name_ru
UNION
SELECT city_name_en FROM {{city}} WHERE city_name_en LIKE :city_name_en
хотя наверно лучше определять что в $_GET['term']: кирилица или латиница, и делать поиск по соответствующему плю
Ответить