gpt4 book ai didi

php - 在 mySQL WHERE 子句中传递非值

转载 作者:行者123 更新时间:2023-11-29 08:57:37 25 4
gpt4 key购买 nike

以下是我试图开始工作的查询。

$array = array();

SELECT * FROM ENTRIES
WHERE
entry_id = '12'
OR
entry_id_extra IN ('$array')

这当然是简化的。问题是,如果数组有项目并且它返回一切正常,那么它会很好地工作。但如果数组没有项目,它就无法工作。

构造此语句的正确方法是什么,如果数组中没有项目,该语句也不会中断?我试过IN ('NULL','$array')但这没有用。

感谢任何帮助。

最佳答案

您可以使 where 子句的 OR 部分经过条件检查:

$sql = "SELECT * FROM entries WHERE entry_id = 12"

if (count($array) > 0) {
$sql .= ' OR entry_id_extra IN ($array)';
}

关于php - 在 mySQL WHERE 子句中传递非值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9526558/

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