gpt4 book ai didi

php - 在多个值中搜索始终返回 1 个结果

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

我想检索某一列包含多个值之一的所有行,但由于某种原因我总是只得到一个结果。

$q = "SELECT name FROM products WHERE id IN ('$pid')";
$r = mysqli_query($dbc, $q);

while ( $row = mysqli_fetch_row($r) ) {
echo $row[0].'<br>';
}

如果我回显 $q 我得到这个:

SELECT name FROM products WHERE id IN ('2,3,1')

我预计会返回 3 个结果。

最佳答案

您将 in 值视为字符串。我认为您正在获得返回值,因为字符串正在转换回整数,即 2。这是一种解决方案:

SELECT name
FROM products
WHERE find_in_set(id, '$pid') > 0;

您还可以插入不带引号的值:

$q = "SELECT name FROM products WHERE id IN ($pid)";

关于php - 在多个值中搜索始终返回 1 个结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22404379/

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