结果未在MySQL中以空值显示
因此,我在MySQL中设置了一个查询,如下所示,但由于某些原因,它不会包含列“contact_CompanyID”为NULL的结果。理论上,查询不应包括“contact_CompanyID”等于2311或1的结果,因此为什么结果不显示“contact_CompanyID”为NULL的位置,因为NULL不等于2311或1。正如您在查询中所看到的,我尝试了不同的方法,但没有一种方法能够处理注释掉的行结果未在MySQL中以空值显示,mysql,null,resultset,find-in-set,Mysql,Null,Resultset,Find In Set,因此,我在MySQL中设置了一个查询,如下所示,但由于某些原因,它不会包含列“contact_CompanyID”为NULL的结果。理论上,查询不应包括“contact_CompanyID”等于2311或1的结果,因此为什么结果不显示“contact_CompanyID”为NULL的位置,因为NULL不等于2311或1。正如您在查询中所看到的,我尝试了不同的方法,但没有一种方法能够处理注释掉的行 SELECT contact_ID, contact_FirstName, contact_Last
SELECT contact_ID, contact_FirstName, contact_LastName, contact_CompanyID
FROM Contact WHERE
NOT contact_IsUnsubscribed
AND NOT contact_HasLeftCompany
#AND contact_CompanyID <> 2311
#AND contact_CompanyID <> 1
#AND NOT contact_CompanyID = 2311
#AND NOT contact_CompanyID = 1
#AND NOT FIND_IN_SET(contact_CompanyID,'2311,1')
非常感谢。联系您的公司,该公司可能有空白 请检查以下查询
SELECT contact_ID, contact_FirstName, contact_LastName, contact_CompanyID
FROM Contact
WHERE contact_LastName = 'Dodd'
and length(trim(contact_CompanyID)) = 0
几乎对空值的任何比较都计算为空-这被视为false 可以使用的一种方法是空安全比较。在MySQL中,这看起来像:
SELECT contact_ID, contact_FirstName, contact_LastName, contact_CompanyID
FROM Contact
WHERE NOT contact_IsUnsubscribed AND
NOT contact_HasLeftCompany AND
NOT contact_CompanyID <=> 2311 ;