gpt4 book ai didi

php - 基数违规 : 1241 Operand should contain 1 column(s) PDO

转载 作者:行者123 更新时间:2023-11-29 13:32:56 27 4
gpt4 key购买 nike

我尝试通过 pdo 运行此代码

db::query("SELECT v.id, v.rel_x, v.rel_y FROM p_villages v WHERE v.field_maps_id=3
AND ISNULL(v.player_id) AND (v.rel_x >= ?,?,?,? AND v.rel_x <= ?,?,?,?)
AND (v.rel_y >= ?,?,?,? AND v.rel_y <= ?,?,?,?)
AND v.rand_num > 0 ORDER BY v.rand_num LIMIT 1",array(1,2,3,3,1,2,3,3,1,2,3,3,1,2,3,3));

但是我发现了这个错误

Warning: PDOStatement::execute(): SQLSTATE[21000]: Cardinality violation: 1241 Operand should contain 1 column(s) \

所以,我需要像 SELECT v.id, v.rel_x, v.rel_y FROM p_villages v WHERE v.field_maps_id=3 AND ISNULL(v.player_id) AND (v.rel_x >= 1,2,3,4 AND v.rel_x <= 1,2,3,4) AND (v.rel_y >= 1,2,3,4 AND v.rel_y <= 1,2,3,4) AND v.rand_num > 0 ORDER BY v.rand_num LIMIT 1 这样的输出查询在参数中我想传递这些参数中的每个参数,这里是 16

我该怎么办?

最佳答案

这个:v.rel_y <= ?,?,?,?

看起来很奇怪。

绑定(bind)参数必须是自包含的,您不能通过多个比较来构建右侧或左侧部分。

也就是说,如果你的意思是 x >= 5.1 ,你不能输入 x >= ?.?并将 2 个参数传递给 pdo 语句。然后你必须通过 x >= ?然后bindValue(5.1);

关于php - 基数违规 : 1241 Operand should contain 1 column(s) PDO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19155932/

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