2015-02-26 1 views
2

Я использую Propel два, я хочу, чтобы иметь возможность выбрать значение одного столбца в данной таблице, эквивалентный сырой SQL-запрос выглядит следующим образом:Propel выбрать один столбец из таблицы

select author_id from book_authors WHERE book_id = 111; 

Если я пишу

BookAuthorsQuery::create()->findByAuthorId(111); 

я получить массив объекты, содержащие все поля, что таблица имеет, но я только один массив, содержащее значение выбранного мой колонка.

ответ

8

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

BookAuthorsQuery::create()->select(array('author_id'))->findByBookId(111); 

->select(array('author_id')) в запросе поступательного движения дает продвинет массив полей, которые вы хотели бы выбрать из таблицы.

+0

Эй, там. Пожалуйста, подумайте о том, чтобы объяснить, что это делает и как оно решает проблему. –

+0

Привет @ FélixGagnon-Grenier, пожалуйста, ознакомьтесь с этим разделом документации: http://propelorm.org/Propel/reference/model-criteria.html#getting-columns-instead-of-objects –