我正在开发一个允许分析来自不同视点的数据的应用程序。此数据存储在SQL数据库的30多个表中(某些表具有1:n或n:m关系)。
现在我想按不同的标准过滤这些数据,并在我的应用程序中显示过滤后的数据。
此类过滤器的简化示例如下:
显示所有产品 IN类别X和Y 至少100位来自纽约的客户已购买
显示已购买产品且名称以' ab' 开头且价格介于100和300美元之间的所有客户
现在我想在我的应用程序中提供一个过滤器(类似于ebay,您可以按类别,卖家,价格等进行过滤)。
我的问题:
如何设计这样的过滤器框架?
我不想为每种可能的过滤器组合编写SQL查询。此外,我想要查询和过滤至少10个主题,并且性能很重要。
是否有关于如何构建此类过滤器框架的最佳实践?