gpt4 book ai didi

PHP PDO 选择并输出第一个找到的行结果

转载 作者:行者123 更新时间:2023-12-04 05:35:48 26 4
gpt4 key购买 nike

在找不到正确方向的 1 个下午之后,我希望有人能帮助我。

我想要的是:
将数组绑定(bind)到 PDO 执行语句。因此我在 PREPARE 中使用 WHERE IN 语句。到目前为止一切顺利,我现在的问题是,数字不是唯一的。在我的数据库中有更多具有此值的行。我需要一种方法将查询限制在第一个找到的行,其中 nummer f.e. = 1 然后转到数组的下一个值。

这是代码(我在stackoverflow上找到的;)

$ids     = array(1, 2, 3, 7, 8, 9);
$inQuery = implode(',', array_fill(0, count($ids), '?'));


$stmt = $objDb->prepare(
'SELECT *
FROM table
WHERE nummer IN(' . $inQuery . ')'
);

$stmt->execute($ids);

while($row = $stmt->fetch()) {

echo $row['name'] . "<br />";
}

最佳答案

相信你要加GROUP BY nummer在您的 WHERE 之后条款。

$stmt = $objDb->prepare(
'SELECT *
FROM table
WHERE nummer IN(' . $inQuery . ')
GROUP BY nummer
'
);

编辑

对于 Postgres 尝试:
$stmt = $objDb->prepare(
'SELECT DISTINCT ON (nummer) nummer, *
FROM table
WHERE nummer IN(' . $inQuery . ')
'
);

关于PHP PDO 选择并输出第一个找到的行结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11954427/

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