mysql - WordPress MYSQL SELECT WHERE 通配符包含 NULL

标签 mysql select where-clause wildcard

我的狗数据库包含一列“hd”,其中包含 A 和 E 之间的值,如果 hd 评级未知,则不包含任何内容。

我正在实现一个用户表单,用于从 Wordpress 查询数据库。

我预计大多数用户都希望选择高清等级在 A 和 C 之间的狗,我已经能够通过以下方式做到这一点:

WHERE hd REGEXP "[A|B|C]";

但是 REGEXP 似乎没有通配符解决方案,因此如果用户不需要在 HD 上进行选择,我可以使用

WHERE hd LIKE "%";

但是,如果我使用 LIKE,我可以一次搜索一个高清代码。 例如 哪里 hd 像“B”;

我还设法选择多个值:

WHERE hd IN ('A','B','C');

但是我做不到

WHERE hd IN ("%");

但我真正需要的是对多个值或通配符进行选择,然后将其传递给 $_POST 数组中的 SELECT 语句。

欢迎所有建议。

加里

最佳答案

使用列本身怎么样?

WHERE hd IN ('A','B','C')

WHERE hd IN (hd)

hd不为NULL时,这将起作用。

替代方案可能如下所示:

WHERE ((hd >= $hd_low and hd >= $hd_high) or $hd_low is null)

关于mysql - WordPress MYSQL SELECT WHERE 通配符包含 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36116657/

相关文章:

loops - Loop At <itab> TO <wa> Where <cond> 没有找到行

php - 将整数和文本字符串等数据从手机发送到 Web 数据库

mysql - 插入到从删除中选择

php - 在sql中选择查询未检索数据库中的值

MySQL 对 comaprison 运算符 (!=/<>) 的奇怪行为,即 NotEqualTo

python - 查找两个 numpy 数组之间的索引映射

mysql语句用于查找具有最高计数值的单词

mysql - 新手需要查询帮助(MYSQL)

SQL SELECT 用于一对多特征关系以选择具有某些特征的键

jquery - 为什么我们用 select 标签编写 .attr ('selected' ,'selected' )