Sql 维护面向查询的应用程序
我目前正在做某种报告系统。这些数字、表格、图表都是基于查询的结果。不知何故,我发现复杂的查询不容易维护,尤其是在有大量过滤的情况下。这使得查询很长,不容易理解。此外,有时会执行具有类似筛选器的查询,从而产生大量冗余代码,例如,当我要在“2010-03-10”和“2010-03-15”之间选择某个对象,并且位置为“US”,客户群为“ZZ”时,每次在此范围内进行查询时,我都需要重写这些条件。dbms(在我的例子中是mysql)是否支持任何“作用域/上下文”,以使编码更易于维护,速度更快 此外,是否有设计此类应用程序的行业标准或最佳实践? 我想我所做的就是所谓的数据挖掘,对吗Sql 维护面向查询的应用程序,sql,mysql,database,data-mining,Sql,Mysql,Database,Data Mining,我目前正在做某种报告系统。这些数字、表格、图表都是基于查询的结果。不知何故,我发现复杂的查询不容易维护,尤其是在有大量过滤的情况下。这使得查询很长,不容易理解。此外,有时会执行具有类似筛选器的查询,从而产生大量冗余代码,例如,当我要在“2010-03-10”和“2010-03-15”之间选择某个对象,并且位置为“US”,客户群为“ZZ”时,每次在此范围内进行查询时,我都需要重写这些条件。dbms(在我的例子中是mysql)是否支持任何“作用域/上下文”,以使编码更易于维护,速度更快 此外,是否有
如果您手工编写查询代码,那么您将不会成为一个非常灵活的报告工具。每当一个需求发生变化,你都会绞尽脑汁地编写精巧的代码,试图满足它——这种方式就是疯狂 相反,您应该开始考虑在查询基础结构之上的元层,并根据用户表示的条件生成sql。您可以向他们展示一组选项,从中可以生成查询。如果您考虑一下如何使这些选择具有可扩展性,那么您将很好地走上已经存在的许多BI和报告产品的道路 您可能还希望开始寻找已经实现这一点的基础架构,例如(被业务对象吞没,被SAP吞没)或Eclipse的。根据您是在进行编程练习还是在解决用户的报告问题,您可能只想获得一个现成的产品,它已经有了数万人年的开发,例如上面的产品,甚至(被IBM吞并)或(被Oracle吞并)
祝你好运。如果你手工编写查询代码,你就不会成为一个非常灵活的报告工具。每当一个需求发生变化,你都会绞尽脑汁地编写精巧的代码,试图满足它——这种方式就是疯狂 相反,您应该开始考虑在查询基础结构之上的元层,并根据用户表示的条件生成sql。您可以向他们展示一组选项,从中可以生成查询。如果您考虑一下如何使这些选择具有可扩展性,那么您将很好地走上已经存在的许多BI和报告产品的道路 您可能还希望开始寻找已经实现这一点的基础架构,例如(被业务对象吞没,被SAP吞没)或Eclipse的。根据您是在进行编程练习还是在解决用户的报告问题,您可能只想获得一个现成的产品,它已经有了数万人年的开发,例如上面的产品,甚至(被IBM吞并)或(被Oracle吞并) 祝你好运