gpt4 book ai didi

php - 插入如何进行多对多查询 "OR"两个表

转载 作者:行者123 更新时间:2023-11-29 21:28:21 24 4
gpt4 key购买 nike

我正在使用 propel ORM 并有两个表:

offer
id | description | ....
tag
id | Name | ....
offer_tag
offerid | tagid

其中 offer_tag 是多对多表,两列都与各自的表 ID 主键相关。

我的目标是通过 PROPEL 创建一个查询,搜索可能是 Offer.description 或 tag.name 中的单词。也就是说:如果我搜索 eggs,我可以收到所有在 Offer.description 中包含 eggs 但不在 tag.name 中包含 eggs 的优惠> 在 tag.name 中但在 Offer.description 中,或在两个表列中。

有人可以帮助我吗?

最佳答案

已解决:

假设我想搜索单词milk,它可能是一个标签,或者在报价(产品)描述中......代码是:

$of = OfferQuery::create()
->where('Offer.Description LIKE ? %milk%')
->or()
->useOfferTagQuery()
->useTagQuery()
->filterByName('milk')
->endUse()
->endUse();
->find();

此代码仅查找在多对多表 (offer_tag) 和匹配标签或描述中至少具有关系的优惠(产品)。如果优惠的描述包含牛奶但没有标签,则该优惠将从查询中排除。

希望可以帮助别人。

关于php - 插入如何进行多对多查询 "OR"两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35399871/

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