我有一個大表包含一個date_time列。
列生成的表包含2年,月從date_time值中提取和用於分區。
我有以下問題。
如果我運行查詢
SELECT *
從表
其中date_time > <“2022-07-09”“2022-07-01”和date_time
這個查詢將掃描所有文件
如果我修改查詢
SELECT *
從表
其中date_time > <“2022-07-09”“2022-07-01”和date_time
= 2022年和月= 7
現在修剪會得到應用和查詢將運行~ 20倍。
我會期待,鑒於date_time和列之間的關係定義的年和月,修剪隻能被應用即使date_time在where子句中指定。
我遺漏了什麼東西在我的配置還是我的理解是不正確的?
謝謝,
Andrej