2025-02-13 14:54:32 +01:00
|
|
|
from tests.dialects.test_dialect import Validator
|
|
|
|
|
|
|
|
|
|
|
|
class TestDrill(Validator):
|
|
|
|
dialect = "drill"
|
|
|
|
|
2025-02-13 15:46:19 +01:00
|
|
|
def test_drill(self):
|
2025-02-13 21:30:28 +01:00
|
|
|
self.validate_identity(
|
|
|
|
"SELECT * FROM table(dfs.`test_data.xlsx`(type => 'excel', sheetName => 'secondSheet'))"
|
|
|
|
)
|
|
|
|
self.validate_identity(
|
|
|
|
"SELECT * FROM (SELECT * FROM t) PIVOT(avg(c1) AS ac1 FOR c2 IN ('V' AS v))",
|
2025-02-13 15:46:19 +01:00
|
|
|
)
|
|
|
|
|
2025-02-13 14:54:32 +01:00
|
|
|
self.validate_all(
|
|
|
|
"SELECT '2021-01-01' + INTERVAL 1 MONTH",
|
|
|
|
write={
|
2025-02-13 21:30:28 +01:00
|
|
|
"drill": "SELECT '2021-01-01' + INTERVAL '1' MONTH",
|
2025-02-13 15:52:09 +01:00
|
|
|
"mysql": "SELECT '2021-01-01' + INTERVAL '1' MONTH",
|
2025-02-13 14:54:32 +01:00
|
|
|
},
|
|
|
|
)
|
2025-02-13 22:00:08 +01:00
|
|
|
|
|
|
|
def test_analyze(self):
|
|
|
|
self.validate_identity("ANALYZE TABLE tbl COMPUTE STATISTICS")
|
|
|
|
self.validate_identity("ANALYZE TABLE tbl COMPUTE STATISTICS SAMPLE 5 PERCENT")
|