gpt4 book ai didi

MySQL AND 语句失败

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

我的查询失败了,这似乎是 AND 语句失败了。

if(isset($_POST['sea']) && $_POST['sm'] !==''){
$sm = trim($_POST['sm']);
$sql = "SELECT * FROM `memorials` WHERE `fname` LIKE '$sm%' OR `lname` LIKE '$sm%' OR `comments` LIKE '$sm%' AND `status` = '2' ";
$q = $conn->prepare($sql);
$q->execute();

我添加\删除了反引号,'status = '2' 失败。

以下语句在 phpmyadmin 中有效

SELECT * FROM `memorials` WHERE `fname` LIKE 'test%' AND status = '2'

此语句在 phpmyadmin 中失败

SELECT * FROM `memorials` WHERE `fname` LIKE 'test%' OR `lname` LIKE 'test%' AND status = '2'

此查询搜索注释 AND 子句有效,但忽略 fname 和 lname

$sql = "SELECT * FROM memorials WHERE `fname`  OR  `lname`  OR `comments`  LIKE '$sm%'  AND status = '2'    ";

有人对我失败的地方有建议吗

谢谢

加里

最佳答案

您需要在适当的部分两边加上括号。也许是这样的:

SELECT * 
FROM `memorials`
WHERE (`fname` LIKE 'test%' OR `lname` LIKE 'test%') AND status = '2'

关于MySQL AND 语句失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15121532/

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