繁体   English   中英

如何最好地开发sql以支持Web应用程序中的搜索功能?

[英]How best to develop the sql to support Search functionality in a web application?

与许多Web应用程序(业务)一样,客户想要一个将在每个数据字段中搜索的表单。 表单可以有15-20个不同的字段,用户可以在sql(存储过程)中选择/输入/输入。

这些是用户非常典型的请求,大多数应用程序都必须处理这些请求。

真正的问题是如何为用户提供这种类型的接口/选项建立快速SQL访问。 上面的字段可以跨越15个不同的表,并且相应的sql语句(通常抽象为存储过程)将具有尽可能多的连接。 数据总是必须返回到网格类型视图以及一些报告格式(通常是excel)。

我/我们发现这些sql语句很慢并且难以优化,因为用户可以输入1或15个不同的搜索条件。

该怎么做? 寻找有关现有大型应用程序如何处理这些要求的建议/想法。
是否真的归结为尝试优化存储过程中的sql?

谢谢

不,您需要采用真正的搜索引擎技术来使全文搜索具有良好的性能。 没有SQL谓词(例如LIKE '%pattern%' )将是可扩展的。

您没有确定您使用的是哪个品牌的RDBMS,但RDBMS的每个主要品牌都有自己的全文搜索功能:

还有用于索引文本的第三方解决方案,例如:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM