Учение Symfony, уникальные записи - PullRequest
0 голосов
/ 29 апреля 2011

Я использую Symfony 1.4.11 с доктриной. Это одна из моих таблиц:

Subscriptions:
  connection: doctrine
  tableName: subscriptions
  columns:
    user_id: { type: integer(4), primary: true }
    category_id:  { type: integer(4), primary: true }
  relations:
    sfGuardUser: { onDelete: CASCADE, local: user_id,  foreign: id }
    Categories: { onDelete: CASCADE, local: category_id, foreign: category_id }

Мне нужно получить все user_id из этой таблицы.

Я делаю:

 public function getSubscriptionsUser()
  {
    $q = $this->createQuery('a')
        ->select ('a.user_id');

   return $q-> execute();
  }

Но если пользователь подписан на несколько категорий, его идентификатор будет повторяться несколько раз. Можно ли извлечь только уникальный идентификатор пользователя? Если у пользователя id = 1, и это повторяется 10 раз, в результате у меня будет только «1», но нет «1 1 1 1 1 1 1 1 1 1» :-) Спасибо!

1 Ответ

3 голосов
/ 29 апреля 2011

Это должно сработать для вас:

$q = $this->createQuery('a')
    ->select ('distinct(a.user_id) as user_id');
...