当前位置: 首页 > 面试题库 >

Yii2如何执行“与”或“或”条件分组?

司徒宇
2023-03-14
问题内容

我是Yii-2框架的新手。我如何使用activeQuery和模型在Yii-2框架中实现以下查询。

SELECT * FROM users AS u WHERE u.user_id IN(1,5,8) AND (u.status = 1 OR u.verified = 1) OR (u.social_account = 1 AND u.enable_social = 1)

谢谢


问题答案:

您可以尝试以下方法:

//SELECT * FROM users AS u WHERE u.user_id IN(1,5,8) AND (u.status = 1 OR u.verified = 1) OR (u.social_account = 1 AND u.enable_social = 1)
$model = arname()->find()
       ->andWhere(['user_id'=>[1,5,8]])
       ->andWhere(['or',
           ['status'=>1],
           ['verified'=>1]
       ])
       ->orWhere(['and',
           ['social_account'=>1],
           ['enable_social'=>1]
       ])
       ->all();


 类似资料:
  • 我需要帮助使用JavaFX编写基于windows的应用程序。我只是想用if/else条件显示或隐藏一些图像。我真正想要的是这样的:如果x=1,那么显示image1如果x=2,则显示image2 我尝试了setvisible()和setDisable()方法来做到这一点,但是不起作用。 我的.fxml文件代码是:

  • 问题内容: 使用Criteria或HQL有什么利弊?Criteria API是在Hibernate中表达查询的一种很好的面向对象的方式,但是有时候Criteria Queries比HQL更难以理解/构建。 您何时使用标准以及何时使用HQL?在哪种用例中,您更喜欢什么?还是只是口味问题? 问题答案: 我最喜欢动态查询的条件查询。例如,动态添加一些订购或根据某些参数省去某些零件(例如限制)要容易得多。

  • 问题内容: 我的应用程序结合使用Flask,Flask-SQLAlchemy,Flask-WTF和Jinja2。 在当前版本中,我有一个设置表。该表将只有一个记录和一个字段。最初,该表包含零个记录。 我要实现的是: 鉴于db中不存在任何条目,因此请显示空表单以供用户输入 假设存在一个条目,请显示该条目,然后 如果用户更改值,则更新db中的rec。 这是我的代码: models.py 表格 view

  • 在https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-filter-aggregation.html我们了解到: 以上代码显示了我们如何为t恤添加aggs,但我们如何做到: 和

  • 问题内容: 如果响应包含“已完成”或“正在处理,将需要一些时间来处理”,我希望在两种情况下都可以通过请求。 但是,如果我将这两个断言都包含在响应断言中,它将视为“和”。只有双方都满意,它才会通过。在这里,任何一项就足够了。请提出建议。 问题答案: 您将需要一个支持脚本的断言,即Beanshell断言 将Beanshell断言添加为请求的子项,该请求将返回“已完成”或“正在进行”消息 将以下代码放入

  • 问题内容: 为了创建可执行文件(Windows),我假设我们应该使用其中之一:Py2exe或PyInstaller。 它们之间有什么区别? 问题答案: Py2exe和PyInstaller都是包装器,但是我注意到了一些区别, Py2exe与python2.4 +兼容,包括python3.0和3.1,而PyInstaller当前与python 2.7和3.3–3.5兼容 据我所知,Py2exe不支持