通过将数组传递给 MySQL PHP 中的查询来动态创建 OR 条件

Dynamically creating OR conditions by passing an array to a query in MySQL PHP(通过将数组传递给 MySQL PHP 中的查询来动态创建 OR 条件)
本文介绍了通过将数组传递给 MySQL PHP 中的查询来动态创建 OR 条件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用数组动态创建 OR 条件.给定一个数组,当然名称 $courses = array('Eng, 'Deu', 'Bio', 'Chemi') 我想要一个 SQL 查询,它使用数组中的值带有 OR 条件的 AND 子句,例如:

I am trying to create OR condition dynamically using an array. Given an array, of course names $courses = array('Eng, 'Deu', 'Bio', 'Chemi') I want to have a SQL query that uses the values of the array in its AND clause with OR conditions like:

    SELECT *
        FROM classe
        /* The OR conditions should be created in AND clause using array */
        WHERE class = 'EFG' AND (course = 'Eng' OR course = 'Deu' OR course = 'Bio')

我试图在 PHP MySQL 中做到这一点.

I trying to do it in PHP MySQL.

任何帮助将不胜感激.

提前致谢.

推荐答案

不用那么多 OR 子句,你可以简单地使用 IN(..):

Instead of so many OR clauses, you can simply use IN(..):

SELECT *
FROM classe
WHERE class = 'EFG' AND course IN ('Eng' ,'Deu', 'Bio')

在 PHP 代码中,可以使用 implode() 函数将数组转换为逗号分隔的字符串,并在查询字符串生成中使用.

In the PHP code, you can use implode() function to convert the array into a comma separated string, and use it in the query string generation.

这篇关于通过将数组传递给 MySQL PHP 中的查询来动态创建 OR 条件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Convert JSON integers and floats to strings(将JSON整数和浮点数转换为字符串)
in php how do I use preg replace to turn a url into a tinyurl(在php中,如何使用preg替换将URL转换为TinyURL)
all day appointment for ics calendar file wont work(ICS日历文件的全天约会不起作用)
trim function is giving unexpected values php(Trim函数提供了意外的值php)
Basic PDO connection to MySQL(到MySQL的基本PDO连接)
PHP number_format returns 1.00(Php number_Format返回1.00)