php - 如何使用 IN 根据值列表选择具有空值的行?

标签 php mysql sql database relational-database

我被这个压垮了:

我正在尝试执行此查询:

SELECT * FROM my_table WHERE some_column IN(2, 3, 5, null)

SELECT * FROM my_table WHERE some_column IN('wert','qw3e','dfg',null)

但 IN 不考虑 NULL 值,然后我尝试了这个:

SELECT * FROM my_table WHERE IF (4 is null, some_column is null, some_column IN (4))

此查询对于一个值工作正常,但正如您在第一个查询中看到的那样,我需要考虑多个值,如何?

我想我需要做一个接收参数的函数来查找:

function (param) 
 SELECT * FROM my_table WHERE IF (param is null, some_column is null, some_column IN (param))

谢谢

最佳答案

为什么不试试下面的方法

SELECT * FROM my_table WHERE some_column IN('wert','qw3e','dfg') OR some_column IS NULL

关于php - 如何使用 IN 根据值列表选择具有空值的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39589988/

相关文章:

c# - 数据未插入到 Azure Sql 数据库中

sql - 使用p6spy插件配置进行Grails 2.0.4和sql性能分析

mysql - cake php 如何做一个好的查询

php - 如何获得不同的唯一名称

php - PHP OOP 中的属性与属性数组

php - CodeIgniter - 仅当有查询要运行时才连接到数据库

mysql - mysql语句错误

php - 如何让docker API通过http访问

php - 在 freeBSD 上设置 PHP 与 MySQL 一起工作?

php - 在 PHP 中添加 MYSQL 查询获取的总量时出错