在 json 列中查找字符串
Find string in json column
我正在尝试使用 doctrine/orm.
检查 find_this_message
消息是否存在于 json 列 errors
中
下面是 json 字段的示例:
[{"message_key": "another_message", "message_params": []}, {"message": "find_this_message", "message_params": []}]
我使用了下面的代码,但它总是returns什么都没有
$qb = $this->createQueryBuilder('er');
$qb
->andWhere('JSON_CONTAINS(er.errors, :error) = 1')
->setParameter('error', '"'find_this_message'"');
;
return $qb->getQuery()->getSingleResult();
提前感谢您的帮助:)
根据 Doctrine ORM documentation 你应该使用类似的东西:
$qb->select('*')
->from('er', 'er')
->where('JSON_CONTAINS(er.errors, :error) = 1')
->setParameter('error', '{"message": "find_this_message"}');
我正在尝试使用 doctrine/orm.
检查find_this_message
消息是否存在于 json 列 errors
中
下面是 json 字段的示例:
[{"message_key": "another_message", "message_params": []}, {"message": "find_this_message", "message_params": []}]
我使用了下面的代码,但它总是returns什么都没有
$qb = $this->createQueryBuilder('er');
$qb
->andWhere('JSON_CONTAINS(er.errors, :error) = 1')
->setParameter('error', '"'find_this_message'"');
;
return $qb->getQuery()->getSingleResult();
提前感谢您的帮助:)
根据 Doctrine ORM documentation 你应该使用类似的东西:
$qb->select('*')
->from('er', 'er')
->where('JSON_CONTAINS(er.errors, :error) = 1')
->setParameter('error', '{"message": "find_this_message"}');