使用SQLite NOT%LIKE%并返回所有行,即使值为NULL



我的数据库中有一个名为LABELS的列(值类似于商业、个人、应税..(。该字段可能包含一个或多个标签,也可能为空。

当尝试使用语句SELECT * FROM TRANSACTIONS WHERE (LABELS NOT LIKE '%Business%' )时,它返回所有不包含Business的行,但不返回LABELS中没有值的任何行。如何让它返回任何不包含业务的行,包括LABELS中没有值的行?

检查LABELS是否为null:

WHERE (LABELS NOT LIKE '%Business%' ) OR (LABELS IS NULL)

或使用COALESCE():

WHERE (COALESCE(LABELS, '') NOT LIKE '%Business%' )

最新更新