Zend Framework создает функцию sql

Я хотел бы создать sql-запрос в Zend Framework в Abstract.php или в модели? но мне трудно понять, как это сделать. Я новичок в zend framework.

Запрос, который я хочу создать, выглядит так:

delete from users where id not in(select * from(select min(n.id)from users n group by n.email)x);

Но в зенде:

$results = $db->query('delete
                from users
                where id not in(
                    select * from(
                        min(n.id)
                        from users n
                        group by n.email
                )x)');

Похоже, $db получил неопределенную переменную, какую функцию базы данных должен вызывать db? Моя база данных вызывается в application.ini


person Ya Fa Su    schedule 11.02.2013    source источник
comment
Это даже не малейший бит корректного PHP-кода. Посмотрите на stackoverflow.com/a/5380654/1902010 что-то похожее на то, что вы пытаетесь сделать.   -  person ceejayoz    schedule 12.02.2013
comment
О, спасибо, а как мне вызвать удаление   -  person Ya Fa Su    schedule 12.02.2013
comment
Я бы предположил, что вы меняете select() на delete(), но вы хотели бы изучить PHP и прочитать документацию, прежде чем вносить такие деструктивные изменения в данные.   -  person ceejayoz    schedule 12.02.2013
comment
Какой адаптер базы данных вы используете? Он должен быть установлен в вашем ini-файле.   -  person James Woodruff    schedule 12.02.2013


Ответы (1)


вам нужно написать этот синтаксис для выполнения вашего пользовательского запроса.

$db->getAdapter()->query('delete
                from users
                where id not in(
                    select * from(
                        min(n.id)
                        from users n
                        group by n.email
                )x)');
person Nilesh Gupta    schedule 13.02.2013