soro SegroeG
求sqlserver 关键字查询的高效率写法
原来的写法这样: select * from T where name LIKE %关键字%
林小.鸟菜.ten
select * from T where name =关键字
l0 zoidut StnemeganaM
/小纠结人家要的模糊查询高效率
soro SegroeG
?net-菜鸟-小林 不是等于 是包含关键字就可以的
soro SegroeG
要最快的效率哦
条数太多了 太耗时了
莞东.4CVM.游天信
select * from T where name like '%关键字%' ,如果name是建立索引的,是高效了
soro SegroeG
?信天游-MVC4-东莞 我这个要查询的字段 字符串nvarch(max) 可能有近百万个字符长度
l0 zoidut StnemeganaM
/斜眼笑那你可能是遇到了假程序员
真正的程序员都是明骚
哪有闷骚的
近百万字符长度?
关系型数据库?
l0 zoidut StnemeganaM
/小纠结找到了分享一下
的确是个难题
莞东.4CVM.游天信
varchar长度好像最长是8000个字符吧
超过这个长度是备注型了
drahciR
varchar(max) 莞东.4CVM.游天信
上面这个家伙吹百万字,是个笑话吧
l0 zoidut StnemeganaM
没有百万,是近百万
莞东.4CVM.游天信
这么长的应保字文件路径,然后再去指定路径读取出来
l0 zoidut StnemeganaM
? 空天阔海
like '%x%' 索引无效 走全表扫描
soro SegroeG
情况1:几万~几十万条数据 查询name字段里(name字段里的字符串长度平均几百位以内),包含关键字的
情况2:十几条数据,查询name字段里(name字段里的字符串长度平均近百万位以内),包含关键字的
taC_duorP
数据库里组大的字符长度...
大约一个字段里能放2M的文字吧,,我记得...
l0 zoidut StnemeganaM
/小纠结
taC_duorP
长度是20亿? drahciR
text已经淘汰,被varchar(max)取代
l0 zoidut StnemeganaM
/斜眼笑20亿个字符也没多大啊
soro SegroeG
现在要查询name字段内包含 (关键字)的数据
?查表1靠谱 还是表2靠谱啊?
具体的sqlserver 查询方法有什么优化呢?l0 zoidut StnemeganaM
/小纠结找到了找到了这就够了/小纠结 soro SegroeG
关键现在想查询关键字匹配的数据 不知道哪种效率最快
莞东.4CVM.游天信
,这个表2 soro SegroeG
?信天游-MVC4-东莞 查表2吗?
soro SegroeG
?信天游-MVC4-东莞 如果表1,我将10条数据查出来,然后通过C#的 indexOf 这样效率咋样啊、?
莞东.4CVM.游天信
像你这样多的数据没做过测试,不作空评
l0 zoidut StnemeganaM
不作置评