Присоединяется к классу Yii CDBCriteria? - PullRequest
0 голосов
/ 09 февраля 2012

Может ли кто-нибудь помочь мне преобразовать этот следующий оператор SQL (который работает в моей базе данных) в формат класса Yb Framework CDbCriteria?

Вот мой SQL:

ВЫБРАТЬ автомобили. *, 3963 * acos (cos (радианы (53.376217)) * cos (радианы (car_dealers.latitude)) * cos (радианы (-1.499595)) - радианы (car_dealers.longitude)) + sin (радианы (53.376217)) * sin (радианы (car_dealers.latitude))) в качестве расстояния от автомобилей.AND cars.model = 'Punto' ЗАКАЗАТЬ на расстояние;

Вот моя попытка Yii:

$criteria= new CDbCriteria;
$criteria->alias = 'cars';
$criteria->select= 'cars.*, 3963 * acos(cos(radians(53.376217)) * cos(radians(car_dealers.latitude)) * cos(radians(-1.499595) - radians(car_dealers.longitude)) + sin(radians(53.376217)) * sin(radians(car_dealers.latitude))) AS distance';
$criteria->join='JOIN car_dealers ON cars.company_id=car_dealers.company_id';
$criteria->condition= 'make=:make AND model=:model'; 
$criteria->params= array('[:make] => Fiat,[:model] => Punto')
$criteria->order='distance';

Большое спасибо заранее всем, кто может помочь!:)

1 Ответ

0 голосов
/ 20 августа 2013

У вас есть опечатка здесь

$criteria->params= array('[:make] => Fiat,[:model] => Punto')

Это должно быть:

$criteria->params= array(':make' => 'Fiat',':model' => 'Punto')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...