我希望能够对所有列进行选择,如果为null,则显示0(对于其中一些列),而不必编写每个列'声明中的名字。
我能想到的就是这样:
SELECT *, IFNULL(`nullable_col1`, 0) FROM `my_table`;
正确的方法是什么?
答案 0 :(得分:1)
没有没有办法。您必须在要为其拥有值的每列上使用IFNULL
函数。
您可以做的一件事是,您可以简单地为所有非NULL的列选择值(但我不确定这是否是您想要的)
SELECT * FROM my_table WHERE (nullable_col1 AND nullable_col2 AND nullable_col2) IS NOT NULL
因此,这将仅选择非NULL的列。