Zendframework / PgSQL fetchВсе заказы - PullRequest
2 голосов
/ 29 апреля 2010

У меня есть таблица pgsql с идентификатором полей, идентификатором, именем.

  id serial NOT NULL,
  identifier character varying(16),
  name character varying(128)

Я хочу fetchAll значения из таблицы идентификатора заказа.

но идентификатор имеет значения

12, 100, 200, 50

и после $table->fetchAll(null, 'identifier'); дает результат

100, 12, 200, 50

но я хочу получить результат как

12, 50, 100, 200

или используя прямой запрос?

Ответы [ 2 ]

1 голос
/ 29 апреля 2010

Я думаю, этот запрос будет работать для вас

select * from tablename order by tableField::int
0 голосов
/ 29 апреля 2010

Попробуйте это:

$table->fetchAll(null, '(identifier+0)');

Операция +0 должна заставить PostgreSQL приводить значение идентификатора к целому числу, поэтому он сортирует по номерам, а не по алфавиту.

Наличие круглых скобок должно дать Zend Framework подсказку для обработки аргумента сортировки как выражения, а не имени столбца.

...