MySQL语法错误尝试查找空列值

问题描述 投票:-1回答:2

我正在尝试通过检查以查看字段是NULL还是空:

 $query = $this->pdo->prepare('SELECT * FROM `' . $this->table . '` WHERE `wp_permalink` IS NOT NULL AND `wp_permalink` <> "" AND `id` != 2 AND `ga_page_views` != ' . $nogo . ' ORDER BY ga_page_views DESC LIMIT 6');

如何修复wp_permalink <>“”的语法错误?谢谢您的帮助。我仍在学习。

php mysql syntax
2个回答
2
投票

像这样改变代码。

$query = $this->pdo->prepare('SELECT * FROM `' . $this->table . '` WHERE `wp_permalink` IS NOT NULL AND `wp_permalink` <> \'\' AND `id` != 2 AND `ga_page_views` != ' . $nogo . ' ORDER BY ga_page_views DESC LIMIT 6');

单引号用于指示SQL中字符串的开头和结尾。双引号通常不在SQL中使用,但可能因数据库而异。

检查此链接还difference between single and double quotes in SQL

How to use single quote inside an echo which is using single quote


0
投票

字符串文字用单引号表示:

wp_permalink IS NOT NULL and wp_permalink <> ''
-- Single quotes-----------------------------^^
© www.soinside.com 2019 - 2024. All rights reserved.