假设我有一个表“interesting_table”,我想找到所有条目都为非null的所有行。
我在尝试
select * from interesting_table where * is not NULL ;
它不起作用,因为*未被识别为列。如何在不列出所有列的情况下修改此内容?
答案 0 :(得分:1)
两个选项:
1)使用类似CONCAT
的函数,如果任何参数为null,则返回null
select *
from interesting_table
where concat(data1, data2) is not null;
2)将NATURAL JOIN
与同一张表格一起使用。如果任何列为NULL,则该行的JOIN将失败。
select t1.*
from interesting_table t1
natural join interesting_table t2;
如果表包含重复项,则可能需要使用DISTINCT。