Doctrine Запрос на установку временного столбца - PullRequest
0 голосов
/ 12 января 2020

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

Как добавить временный столбец в конце при получении?

В настоящее время мой код, извлекающий данные, использует doctrine. Как установить параметр для временного столбца? Я нашел if (isset($flag)), но флаг не является именем столбца

  id   parentId    name
--------------------------------
  1       11        aa
  3       20        bb
================================

Структура, которая мне нужна при получении, должна быть такой, как показано ниже

id   parentId    name  flag  
--------------------------------
1       11        aa    1
3       20        bb    1
================================

Мой код

public function getTitle($folderId) :array {
$qb = $this->createQueryBuilder('d');

$qb->select('d')
       ->where('d.id = :id')
       ->setParameter('id', $folderId);
}

1 Ответ

0 голосов
/ 14 января 2020

Если я правильно понимаю, что вы пытаетесь архивировать, но «временный столбец» может быть непостоянным полем, давайте назовем его $ flag, как вы сказали:

/** your class here */
private $flag;

// returns true if title matches the pattern, else return false
public function getFlag($pattern): bool
{
    return preg_match($pattern, $this->title);
}

С другой стороны, если вы Если вы хотите получить записи, в которых заголовок соответствует вашему шаблону «% test%», вы можете сделать это в QueryBuilder

$qb->select('d')
   ->where('d.id = :id', $qb->expr()->like('d.title', $pattern))
   ->setParameter('id', $folderId)
   ->getQuery()
   ->getResult()
;
...