此查询返回 421 条记录:
现在,当我实现“like”运算符时,它返回 349 条记录,它没有考虑字段“invoice_number”为 null 的记录:
最佳答案
类似于 null like '%%'
的条件是假的。 null
不是like
任何事物。所以如果你想允许 null
值(value)观,你需要明确它:
and (ds.numero_factura like '%%' or ds.numero_factura is null)
或者您可以使用coalesce()
:
and coalesce(ds.numero_factura, '') like '%%'
这个条件实际上没有意义(基本上它会允许所有记录),因此您需要根据您的具体用例进行调整。
另一句话是ds.numero_factura
看起来像一个数字;在这种情况下,您不想对其使用字符串函数:请改用数字函数。
关于mysql - SQL查询 "like"运算符错误,当字段为空时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59648613/