【发布时间】:2018-03-14 14:09:29
【问题描述】:
我试图弄清楚如何在 symfony 3.4 应用程序中根据“json”类型列中特定键的值来检索(通过存储库方法,例如使用 DQL 请求)实体。看到 postgre 有一些可能的东西,但我没有找到任何关于 mariaDB 的东西
假设我得到一个实体字母
有了这个属性:
/**
*
* @ORM\Column(type="json")
*/
private $metadatas;
其中包含,例如:
{
"key1": "value",
"key2": "value"
}
我如何,或者,是否可以请求我的数据库获取元数据列中特定键的特定值的字母。
类似的东西:
public function getByKeyValue($key, $value)
{
$em = $this->_em;
$dql = "SELECT l FROM AppBundle:Letter l
WHERE l.metadatas->:key = :value
";
$query = $em->createQuery($dql);
$query->setParameter('key', $key);
$query->setParameter('value', $value);
return $query->getResult();
}
一些信息:
php7.1、mariadb 10.2+、教义/dbal ^2.6、教义 orm ^2.5
非常感谢。
【问题讨论】:
标签: json symfony doctrine mariadb dql