2013-08-27 2 views
0

В mysql существует функция last, которая возвращает последнее найденное значение. Я хотел бы получить то же самое с DQL в проекте symfony. Это возможно.DQL - аналогичная функция для mysql LAST

ie: У меня есть 10 элементов в моем столе. С моей, где я получаю 5 из них, но я хотел бы получить последний из этих 5:

$lastPaperQB = $this->createQueryBuilder('p') 
    ->select('LAST(p)') 
    ->where("p.conference_id = :c AND p.section_id = :s") 
    ->setParameter('c', $conference_id) 
    ->setParameter('s', $section_id); 

Но проблема в том, что последний не существует в DQL:

[Syntax Error] line 0, col 7: Error: Expected known function, got 'LAST' 

ответ

1

В mysql такой функции нет. Это от ms доступа. Вы хотите использовать order by вместе с limit. Без order by вам не гарантируется получение одной строки из 5 строк.

+0

Кажется интересным, спасибо, я попробую его –

+0

Или просто используйте MAX (p), поэтому я получу самую большую. –

+0

Также возможно, если вас не интересует строка, а только максимальное значение. – Marek

Смежные вопросы