【发布时间】:2021-04-03 23:36:57
【问题描述】:
我需要根据条件条件过滤查询。看起来很简单,我只是在寻找优化查询的想法
我需要根据季节、国家和产品过滤价格。所以查询或多或少会像:
SELECT Country, Season, Product, Price
FROM Table
WHERE (Country = 'UK' AND Season = 'High' AND Product = 'X' AND Price < 30)
OR
(Country = 'ES' AND Season = 'Low' AND Product = 'Y' AND Price < 25)
OR
(Country = 'FR' AND Season = 'Mid' AND Product = 'Z' AND Price < 50)
等等。问题是组合的数量是巨大的,这将使这不切实际。欢迎任何想法
【问题讨论】:
-
如果过滤器组合的数量很大,您可以将它们存储在另一个表中吗?在这种情况下,一个简单的连接就可以解决问题。
-
好点。就我而言,这并不简单,但所有事情都认为它可能是最好的解决方案
-
用您正在使用的数据库标记您的问题。
标签: sql filtering query-optimization teradata