0

使用SelectQueryBuilder时,我正在努力构建所需的查询。

我有一个搜索窗口,它接受多个值并为数据库构建相关的搜索字符串。一切正常,当查看 2 个特定字段时问题就来了。

数据库记录为每个联系人保存多个电子邮件地址,但是我似乎无法编写构建查看每个电子邮件列并比较搜索词的字符串所需的代码。

期望的结果是一个看起来像的查询

SELECT col1, col2, col3 
FROM table 
WHERE (
          (email = val OR email2 = val) 
          AND col4 = val2 
          AND col5 = val3
      )

我试图避免看起来像的情况

SELECT col1, col2, col3 
FROM table
WHERE 
    (email = val AND col4 = val2 AND col5 = val3) 
OR 
    (email2 = val AND col4 = val2 AND col5 = val3)

这可以使用SelectQueryBuilder还是我应该看看替代方法?

注意:我可以实现第二个结果,但它非常混乱,如果将来需要额外的字段,将很难维护

4

0 回答 0