@@ -8748,7 +8748,10 @@ private void checkLiteral2(String expression, String expected) {
87488748 * in StarRocksDialect</a>,
87498749 * <a href="https://issues.apache.org/jira/browse/CALCITE-6979">[CALCITE-6979]
87508750 * Invalid unparse for IS TRUE,IS FALSE,IS NOT TRUE and IS NOT FALSE
8751- * in ClickHouseDialect</a>.*/
8751+ * in ClickHouseDialect</a>,
8752+ * <a href="https://issues.apache.org/jira/browse/CALCITE-7005">[CALCITE-7005]
8753+ * Invalid unparse for IS TRUE,IS FALSE,IS NOT TRUE and IS NOT FALSE
8754+ * in Hive/Presto Dialect</a>. */
87528755 @ Test void testIsTrue () {
87538756 final String sql = "SELECT * FROM \" EMP\" WHERE \" COMM\" > 0 IS TRUE" ;
87548757 final String expected = "SELECT *\n "
@@ -8760,16 +8763,27 @@ private void checkLiteral2(String expression, String expected) {
87608763 String expectedClickHouse = "SELECT *\n "
87618764 + "FROM `SCOTT`.`EMP`\n "
87628765 + "WHERE CAST(`COMM` AS DECIMAL(12, 2)) > 0.00 IS NOT NULL AND CAST(`COMM` AS DECIMAL(12, 2)) > 0.00" ;
8766+ String expectedHive = expectedClickHouse ;
8767+ String expectedPresto = "SELECT *\n "
8768+ + "FROM \" SCOTT\" .\" EMP\" \n "
8769+ + "WHERE (CAST(\" COMM\" AS DECIMAL(12, 2)) > 0.00) IS NOT NULL AND CAST(\" COMM\" AS DECIMAL(12, 2)) > 0.00" ;
8770+
87638771 sql (sql )
87648772 .schema (CalciteAssert .SchemaSpec .JDBC_SCOTT )
87658773 .ok (expected )
8774+ .withHive ().ok (expectedHive )
8775+ .withPresto ().ok (expectedPresto )
87668776 .withStarRocks ().ok (expectedStarRocks )
87678777 .withClickHouse ().ok (expectedClickHouse );
87688778
87698779 final String sqlNoDeterministic =
87708780 "SELECT * FROM \" EMP\" WHERE \" COMM\" > RAND_INTEGER(10) IS TRUE" ;
87718781 sql (sqlNoDeterministic )
87728782 .schema (CalciteAssert .SchemaSpec .JDBC_SCOTT )
8783+ .withHive ()
8784+ .throws_ ("Unsupported unparse: IS TRUE" )
8785+ .withPresto ()
8786+ .throws_ ("Unsupported unparse: IS TRUE" )
87738787 .withStarRocks ()
87748788 .throws_ ("Unsupported unparse: IS TRUE" )
87758789 .withClickHouse ()
@@ -8787,16 +8801,27 @@ private void checkLiteral2(String expression, String expected) {
87878801 String expectedClickHouse = "SELECT *\n "
87888802 + "FROM `SCOTT`.`EMP`\n "
87898803 + "WHERE CAST(`COMM` AS DECIMAL(12, 2)) > 0.00 IS NULL OR NOT CAST(`COMM` AS DECIMAL(12, 2)) > 0.00" ;
8804+ String expectedHive = expectedClickHouse ;
8805+ String expectedPresto = "SELECT *\n "
8806+ + "FROM \" SCOTT\" .\" EMP\" \n "
8807+ + "WHERE (CAST(\" COMM\" AS DECIMAL(12, 2)) > 0.00) IS NULL OR NOT CAST(\" COMM\" AS DECIMAL(12, 2)) > 0.00" ;
8808+
87908809 sql (sql )
87918810 .schema (CalciteAssert .SchemaSpec .JDBC_SCOTT )
87928811 .ok (expected )
8812+ .withHive ().ok (expectedHive )
8813+ .withPresto ().ok (expectedPresto )
87938814 .withStarRocks ().ok (expectedStarRocks )
87948815 .withClickHouse ().ok (expectedClickHouse );
87958816
87968817 final String sqlNoDeterministic = "SELECT * \n "
87978818 + "FROM \" EMP\" WHERE \" COMM\" > RAND_INTEGER(10) IS NOT TRUE" ;
87988819 sql (sqlNoDeterministic )
87998820 .schema (CalciteAssert .SchemaSpec .JDBC_SCOTT )
8821+ .withHive ()
8822+ .throws_ ("Unsupported unparse: IS NOT TRUE" )
8823+ .withPresto ()
8824+ .throws_ ("Unsupported unparse: IS NOT TRUE" )
88008825 .withStarRocks ()
88018826 .throws_ ("Unsupported unparse: IS NOT TRUE" )
88028827 .withClickHouse ()
@@ -8814,16 +8839,27 @@ private void checkLiteral2(String expression, String expected) {
88148839 String expectedClickHouse = "SELECT *\n "
88158840 + "FROM `SCOTT`.`EMP`\n "
88168841 + "WHERE CAST(`COMM` AS DECIMAL(12, 2)) > 0.00 IS NOT NULL AND NOT CAST(`COMM` AS DECIMAL(12, 2)) > 0.00" ;
8842+ String expectedHive = expectedClickHouse ;
8843+ String expectedPresto = "SELECT *\n "
8844+ + "FROM \" SCOTT\" .\" EMP\" \n "
8845+ + "WHERE (CAST(\" COMM\" AS DECIMAL(12, 2)) > 0.00) IS NOT NULL AND NOT CAST(\" COMM\" AS DECIMAL(12, 2)) > 0.00" ;
8846+
88178847 sql (sql )
88188848 .schema (CalciteAssert .SchemaSpec .JDBC_SCOTT )
88198849 .ok (expected )
8850+ .withHive ().ok (expectedHive )
8851+ .withPresto ().ok (expectedPresto )
88208852 .withStarRocks ().ok (expectedStarRocks )
88218853 .withClickHouse ().ok (expectedClickHouse );
88228854
88238855 final String sqlNoDeterministic = "SELECT * \n "
88248856 + "FROM \" EMP\" WHERE \" COMM\" > RAND_INTEGER(10) IS FALSE" ;
88258857 sql (sqlNoDeterministic )
88268858 .schema (CalciteAssert .SchemaSpec .JDBC_SCOTT )
8859+ .withHive ()
8860+ .throws_ ("Unsupported unparse: IS FALSE" )
8861+ .withPresto ()
8862+ .throws_ ("Unsupported unparse: IS FALSE" )
88278863 .withStarRocks ()
88288864 .throws_ ("Unsupported unparse: IS FALSE" )
88298865 .withClickHouse ()
@@ -8841,16 +8877,27 @@ private void checkLiteral2(String expression, String expected) {
88418877 String expectedClickHouse = "SELECT *\n "
88428878 + "FROM `SCOTT`.`EMP`\n "
88438879 + "WHERE CAST(`COMM` AS DECIMAL(12, 2)) > 0.00 IS NULL OR CAST(`COMM` AS DECIMAL(12, 2)) > 0.00" ;
8880+ String expectedHive = expectedClickHouse ;
8881+ String expectedPresto = "SELECT *\n "
8882+ + "FROM \" SCOTT\" .\" EMP\" \n "
8883+ + "WHERE (CAST(\" COMM\" AS DECIMAL(12, 2)) > 0.00) IS NULL OR CAST(\" COMM\" AS DECIMAL(12, 2)) > 0.00" ;
8884+
88448885 sql (sql )
88458886 .schema (CalciteAssert .SchemaSpec .JDBC_SCOTT )
88468887 .ok (expected )
8888+ .withHive ().ok (expectedHive )
8889+ .withPresto ().ok (expectedPresto )
88478890 .withStarRocks ().ok (expectedStarRocks )
88488891 .withClickHouse ().ok (expectedClickHouse );
88498892
88508893 final String sqlNoDeterministic = "SELECT * \n "
88518894 + "FROM \" EMP\" WHERE \" COMM\" > RAND_INTEGER(10) IS NOT FALSE" ;
88528895 sql (sqlNoDeterministic )
88538896 .schema (CalciteAssert .SchemaSpec .JDBC_SCOTT )
8897+ .withHive ()
8898+ .throws_ ("Unsupported unparse: IS NOT FALSE" )
8899+ .withPresto ()
8900+ .throws_ ("Unsupported unparse: IS NOT FALSE" )
88548901 .withStarRocks ()
88558902 .throws_ ("Unsupported unparse: IS NOT FALSE" )
88568903 .withClickHouse ()
0 commit comments