gpt4 book ai didi

php - 如何使用一个查询更新多行

转载 作者:行者123 更新时间:2023-11-29 14:05:34 25 4
gpt4 key购买 nike

我使用 Postgresql + PHP。

假设我有这张表:

Books ( id, title, year )

和这个 PHP 标题数组:

$titles = array ("bible","kafka","Book of Eli");

现在我想更新上面 $titles 数组中标题所在的所有行。

所以我需要这样的查询:

UPDATE books SET year = '2001-11-11' WHERE title is in $titles;

一个查询是否可行?还是我需要使用 FOR 循环?

最佳答案

有可能,你们实际上非常接近。

对于 SQL,语法如下所示:

UPDATE books SET year = '2001-11-11' WHERE title IN ('bible','kafka','Book of Eli');

要使用 PHP 生成它,您需要执行如下操作:

$query = "UPDATE books SET year = '2001-11-11' WHERE title IN ('" . implode("','", $titles) . "');'";

PHP implode() 函数使用字符串将数组元素连接在一起,因此我在所有元素之间放置了 ',',初始和最终 ' 手动放入字符串中。

请注意,如果任何标题包含撇号,这目前将失败。如果有可能,您将需要避开这些。

关于php - 如何使用一个查询更新多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2838144/

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