如何在多个db表中实现动态搜索

时间:2015-02-11 09:34:29

标签: sql search

我有一个包含多个表和一个Web用户界面的数据库。我希望用户能够在数据库中搜索数据。 搜索结果可以来自多个表和它们之间的连接。

例如:参数a来自表A,b来自表B ect',所以如果他搜索& b他将从A& A获得结果乙

所以我想编写一个代码,根据用户执行的搜索动态生成SQL查询。

但是这种方法实现起来非常复杂,因为我必须为每次搜索生成不同的查询 - 如果他搜索“a”,那么查询将包含“A”,如果他搜索“b”,它将包含'B',如果他搜索'a'& 'b'它将包含'A'和amp; 'B'。

所以我的问题是 - 是否有更简单的方法来实现搜索,或者我是否需要编写带有“if's”的代码?

全部谢谢

1 个答案:

答案 0 :(得分:0)

我真的不知道你的数据库是如何设计的,但是你可以设计一个搜索机制,用户可以选择他想要搜索的数据库(当然是前端用户友好的标识符)。在您的数据库中,您可以为表指定包含元信息的表,例如表的名称,要搜索的列等。

用户告诉接口他想搜索哪个分类(tbls)后,你可以将参数与给定的索引混合(你可以计算逗号),然后对搜索所有tbls的索引计数进行一个while循环字符串,将RS插入临时表#1,#2,#3,...选择它们并rterun它们。

你必须考虑不同的数据类型等。它不是那么容易tbf