У меня есть столбец tags
, содержащий идентификаторы в списке через запятую.Я хочу найти все строки, где заданное значение находится в этом столбце.
Допустим, у меня есть две строки, в которых столбец tags
выглядит следующим образом:
Row1: 1,2,3,4
Row2: 2,5,3,12
, и я хочу выполнить поискдля строки, где столбец содержит 1
.Я пытаюсь сделать это следующим образом:
$qb = $this->createQueryBuilder('p')
->where(':value IN (p.tags))
->setParameter('value', 1);
Я ожидаю, что это будет что-то вроде
SELECT p.* FROM mytable AS p WHERE 1 IN (p.tags)
Выполнение этого в MySQL напрямую работает отлично.В Doctrine это не работает:
Error: Expected Literal, got 'p'
Работает наоборот, хотя, но это не то, что мне нужно:
->where("p.tags IN :value")
I 'мы много пытались сделать эту работу, но она просто не будет ... Есть идеи?