gpt4 book ai didi

php - 如何在mysql查询条件中选择精确的json值

转载 作者:行者123 更新时间:2023-11-29 12:13:22 24 4
gpt4 key购买 nike

我正在尝试在 mysql 查询条件中选择精确的 json 值,目前我正在使用 LIKE 并且它可以工作,但 like 返回误报。

我的代码是::

$id='1';

json 数据示例::["1","12","38"]

$sql="SELECT * FROM `posts` WHERE `json_column` LIKE '%".$id."%' ";

对于这个查询,它返回 1 和 12。我怎样才能只得到 1?

最佳答案

注意额外的引号:

$sql="SELECT * FROM posts WHERE json_column LIKE '%\"$id\"%'";

但是,如果 $id 来自用户输入,则 SQL 注入(inject)是开放的。小心点。

更安全的方法是使用 PHP 参数化查询 prepared statements如下:

$stmt = $dbh->prepare("SELECT * FROM posts WHERE json_column LIKE '%\"?\"%'");
$stmt->bindParam(1, $id);

关于php - 如何在mysql查询条件中选择精确的json值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30282266/

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