Как написать «И» и «ИЛИ» в предложении WHERE в выражении SQL Medoo - PullRequest
0 голосов
/ 22 апреля 2019

Я пытаюсь написать сложный оператор выбора SQL в Medoo, который включает в себя некоторые критерии И и некоторые критерии ИЛИ.

Вот заявление, которое я написал:

debug()->select("ValuesEvaluationInstrument", "*", ["AND"=> ['secondReviewComplete' => "Yes"], "OR" => $filters]);

Это печатает SQL-запрос:

SELECT * FROM "ValuesEvaluationInstrument" WHERE "yearInstrumentPublished" IN ('2019','2018','2017','2016','2015','2014','2013','2012','2011','2010') OR "validated" IN ('Yes') OR "secondReviewComplete" IN ('Yes')

Однако он должен вывести:

SELECT * FROM "ValuesEvaluationInstrument" WHERE "yearInstrumentPublished" IN ('2019','2018','2017','2016','2015','2014','2013','2012','2011','2010') OR "validated" IN ('Yes') AND "secondReviewComplete" IN ('Yes')

Я пытаюсь добиться, чтобы столбец «secondReviewComplete» представлял собой «И», чтобы для всех возвращаемых результатов этот столбец имел значение «Да».

Может кто-нибудь, пожалуйста, помогите написать это правильно?

1 Ответ

0 голосов
/ 22 апреля 2019

Я только что понял это.Разместите это здесь для всех, у кого может быть такая же проблема:

debug()->select("ValuesEvaluationInstrument", "*", ["AND"=> ['secondReviewComplete' => "Yes", "OR" => $filters] ]);

Upvote, если это поможет.

...