Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 用ASP.NETMVC实现数据库多表搜索_Sql_Sql Server_Asp.net Mvc_Search - Fatal编程技术网

Sql 用ASP.NETMVC实现数据库多表搜索

Sql 用ASP.NETMVC实现数据库多表搜索,sql,sql-server,asp.net-mvc,search,Sql,Sql Server,Asp.net Mvc,Search,我有一个关于实现搜索功能的问题。我有一个表,其中包含2个用户id和它们之间的交易细节(标题、日期、描述等)。我想允许用户根据这些条件中的任何一个搜索交易(因此键入“Mike salary 2013”将导致2013年与Mike的交易,其中标题或描述包含单词“salary”) 这可以通过连接所需的表、创建搜索字符串并按该字符串过滤每个输入字来实现,但我关心的是,事务表的设计最终会有数百万行,所以从数据库端连接多个表+字符串操作可能会很慢 我的另一个想法是为搜索字符串创建单独的列-该字符串将随着事务的

我有一个关于实现搜索功能的问题。我有一个表,其中包含2个用户id和它们之间的交易细节(标题、日期、描述等)。我想允许用户根据这些条件中的任何一个搜索交易(因此键入“Mike salary 2013”将导致2013年与Mike的交易,其中标题或描述包含单词“salary”)

这可以通过连接所需的表、创建搜索字符串并按该字符串过滤每个输入字来实现,但我关心的是,事务表的设计最终会有数百万行,所以从数据库端连接多个表+字符串操作可能会很慢

我的另一个想法是为搜索字符串创建单独的列-该字符串将随着事务的创建而创建,并将包含所有必要的信息。问题是当用户决定更改其姓名时(用户可以在其“个人资料”页面中更改姓名)。分配给该用户的所有事务中的搜索字符串都将过时

所以我的问题是:在用户更改姓名后搜索所有条目并更新搜索字符串(这会很昂贵,但用户不会经常更改姓名),还是放弃整个“搜索字符串列”的想法并使用老式的连接方式更好?或者还有其他选择


谢谢您的帮助:)

您应该使用。它实际上结合了你的两个想法。您可以在多个列和多个表上运行FTS查询。在幕后,FTS使用索引,这与您的“搜索字符串列”想法类似。

但我可以将其与LINQ to实体一起使用吗?