gpt4 book ai didi

sql - 二进制或在 Symfony Propel Criteria 中不起作用

转载 作者:行者123 更新时间:2023-12-04 06:24:09 24 4
gpt4 key购买 nike

我正在使用 Symfony 1.4 和 Propel(ORM),我想执行 SQL 查询 (SELECT * FROM 'myblog'
WHERE 'blog_title' LIKE '%symfony%'
OR 'blog_post' LIKE '%symfony%'
)
想要从 myblog 中获取包含 symfony 一词的所有记录。
我写了 Symfony 代码,

$c = new Criteria();
$c->add(MyblogPeer::BLOG_TITLE, "%symfony%", Criteria::LIKE);
$c->addOr(MyblogPeer::BLOG_POST, "%symfony%", Criteria::LIKE);
$my_blog = MyblogPeer::doSelect($c);

但它返回一个空集。给出参数有什么问题吗。

最佳答案

我认为为了在 where 闭包中创建 OR,您需要创建一个 Criterion,然后将该条件添加到查询中,它应该是这样的:

$c = new Criteria();
$criterion = $c->getNewCriterion(MyblogPeer::BLOG_TITLE, "%symfony%", Criteria::LIKE);
$criterion->addOr($c->getNewCriterion(MyblogPeer::BLOG_POST, "%symfony%", Criteria::LIKE));
$c->add($criterion);
$my_blog = MyblogPeer::doSelect($c);

关于sql - 二进制或在 Symfony Propel Criteria 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6213137/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com