我正在尝试使用symfony查询生成器更新列值。问题是我不希望旧值被覆盖,我想用逗号分隔连接新值和旧值,就像下面
id fruits
------------------
1 orange,apple
这是我的查询它只是更新旧值,水果列的类型是longtext
public function updateById($id,$fruit) {
return $this->createQueryBuilder('c')
->update()
->set('c.fruits', ':fruits')
->where('c.id LIKE :id')
->setParameter('id', $id)
->setParameter('fruits', $fruit)
->getQuery()
->getArrayResult();
}
为什么不这样做:
$foo = $fruitRepo->find($id);
/** @var string $fruits */
$fruits = $foo->getFruits();
$foo->setFruits($fruits . ',' . $newFruit);
$fruitRepo->save($foo); // this method persist and flush