Hi! I'm working on Null Value Filter Query[1] these days.I want to enrich the capabilities of null value filter in the next days. Formerly, null value filter only support to filter that the columns queried are any null or all null. But now null value filter is going to support to filter the columns that are specified by the users. You can get an overview of the syntax changes below.
old syntax: withoutNullClause : WITHOUT NULL_LITERAL (ALL | ANY) ; new syntax: withoutNullClause : WITHOUT NULL_LITERAL (ALL | ANY) (LR_BRACKET (expression | identifier) (COMMA (expression | identifier))* RR_BRACKET)? ; You can see some examples below. 1 IoTDB> select * from root.sg1.d1 +----+--------------+--------------+--------------+ |Time|root.sg1.d1.s1|root.sg1.d1.s2|root.sg1.d1.s3| +----+--------------+--------------+--------------+ | 0| 1| 2| 3| | 1| null| 2| 3| | 2| 1| null| 3| | 3| 1| 2| null| +----+--------------+--------------+--------------+ Total line number = 4 It costs 0.006s IoTDB> select * from root.sg1.d1 without null any +----+--------------+--------------+--------------+ |Time|root.sg1.d1.s1|root.sg1.d1.s2|root.sg1.d1.s3| +----+--------------+--------------+--------------+ | 0| 1| 2| 3| +----+--------------+--------------+--------------+ Total line number = 1 It costs 0.04s IoTDB> select * from root.sg1.d1 without null any (s1, s2) +----+--------------+--------------+--------------+ |Time|root.sg1.d1.s1|root.sg1.d1.s2|root.sg1.d1.s3| +----+--------------+--------------+--------------+ | 0| 1| 2| 3| | 3| 1| 2| null| +----+--------------+--------------+--------------+ Total line number = 2 It costs 0.006s 2 IoTDB> select * from root.ln.wf01.wt01 without null all; +-----------------------------+-----------------------+-----------------------------+------------------------+ | Time|root.ln.wf01.wt01.usage|root.ln.wf01.wt01.temperature|root.ln.wf01.wt01.status| +-----------------------------+-----------------------+-----------------------------+------------------------+ |1970-01-01T08:00:00.001+08:00| 0.98| null| null| |1970-01-01T08:00:00.100+08:00| 0.98| null| true| +-----------------------------+-----------------------+-----------------------------+------------------------+ Total line number = 2 It costs 0.007s IoTDB> select * from root.ln.wf01.wt01 without null all (temperature, status); +-----------------------------+-----------------------+-----------------------------+------------------------+ | Time|root.ln.wf01.wt01.usage|root.ln.wf01.wt01.temperature|root.ln.wf01.wt01.status| +-----------------------------+-----------------------+-----------------------------+------------------------+ |1970-01-01T08:00:00.100+08:00| 0.98| null| true| +-----------------------------+-----------------------+-----------------------------+------------------------+ Total line number = 1 It costs 0.007s [1] https://issues.apache.org/jira/browse/IOTDB-2602
