如果mysql列有数据,则返回1或0
如果给定的列有任何数据,我想返回1或0(或true或false,或true或null,或任何最简单的)。无论此字段是否包含数据,其他列仍将返回。下面是正确的方法吗?谢谢如果mysql列有数据,则返回1或0,mysql,pdo,Mysql,Pdo,如果给定的列有任何数据,我想返回1或0(或true或false,或true或null,或任何最简单的)。无论此字段是否包含数据,其他列仍将返回。下面是正确的方法吗?谢谢 SELECT varchar_field IS NOT NULL, some_other_fields 试一试 当varchar\u字段不是null SELECT NOT ISNULL(varchar_field), some_other_fields 如果在varchar\u字段不为空时需要1,请尝试 SELECT NOT
SELECT varchar_field IS NOT NULL, some_other_fields
试一试
当varchar\u字段
不是null
SELECT NOT ISNULL(varchar_field), some_other_fields
如果在varchar\u字段不为空时需要1,请尝试
SELECT NOT ISNULL(varchar_field), some_other_fields
当varchar\u字段
不是null
SELECT NOT ISNULL(varchar_field), some_other_fields
如果在varchar\u字段
不为空时需要1
可以使用case
语句
SELECT NOT ISNULL(varchar_field), some_other_fields
CASE WHEN varchar_field is null
THEN 1
ELSE 0
END
您可以使用case
语句
CASE WHEN varchar_field is null
THEN 1
ELSE 0
END
这比我最初的建议或Neo的建议快吗?我不知道它是否快,但我认为它更容易阅读,因此你可以得到1或0。实际上,如果列有数据,它将返回0。选择NOT ISNULL(varchar_字段),一些其他_字段将正常工作,但是你的问题真的不清楚:“如果给定列有任何数据,我想返回1或0(…)。当然,如果你在它前面写一个NOT,你会得到一个倒转的值……这比我最初的建议或Neo的快吗?我不知道它是否快,但在我看来,它更可读,因此你可以得到1或0。实际上,如果列有数据,它会返回0。选择NOT ISNULL(varchar_字段),有些字段可能会出现问题,但您的问题并不清楚:“如果给定列有任何数据,我想返回1或0(…)。当然,如果在前面写一个NOT,则会得到相反的值…IFNULL()似乎只接受两个参数。是的,我错了。您可以使用case语句来实现您想要的。感谢您的更新。我同意这个案例会起作用,但Obl的可读性似乎更高。IFNULL()似乎只接受两个参数。是的,我错了。您可以使用case语句来实现您想要的。感谢您的更新。我同意这个案例会奏效,但Obl的似乎更具可读性。