用一个关键字查询整个表中的全部列,谁做过?

总会有无法选择的时候 发布于 2013/03/02 16:00
阅读 595
收藏 0

不知道有没有人做过这个需求...
用一个关键字,查询整个表的全部字段。。。。
任何一个匹配的都要被列出来。。。。
一共接近20多个列。。。这该怎么查。。。

解决了,是我考虑的太多了SQL语句:

declare @SelectKey varchar(MAX)
set @SelectKey = '海棠'
SELECT [ID],[name]
FROM [dbo].[ClientData]
where 
	[ID] like  '%' + @SelectKey + '%' or [name] like  '%' + @SelectKey + '%' 
虽然只贴了一部分,但是具体是意思应该是已经表达清楚了。

加载中
0
huan
huan

引用来自“汪宪博”的答案

引用来自“huan”的答案

这也太.......  

如果不用全文检索,至少建个视图,把所有字段拼起来再like吧。

可以说说你的具体想法吗?对这个不太了解,使用试图有什么好处。。?

类似需求还是推荐使用全文检索,使用视图没有和你的查询没有本质区别,只是写起来但是要相对简洁些,不用重复写一堆like语句。

视图查询实际就类似如下sql:

select * from (

select id||name||..... as content

from table ) a

where a.content like '%xxxx%'

总会有无法选择的时候
总会有无法选择的时候
忘记说谢谢了,生成的语录太长…被我放到存储过程里面了,其他的建议还有没有呢?
总会有无法选择的时候
总会有无法选择的时候
原来你指的是这个,这不是我写的,是用记事本的替换功能而来的,手写的话太蛋疼了。 只需连同标题一起复制,然后替换就可以了…
0
mark35
mark35
要么是表设计有问题,要么是应用逻辑有问题
总会有无法选择的时候
总会有无法选择的时候
那你说说,我属于哪里的问题?
0
huan
huan

这也太.......  

如果不用全文检索,至少建个视图,把所有字段拼起来再like吧。

0
总会有无法选择的时候
总会有无法选择的时候

引用来自“huan”的答案

这也太.......  

如果不用全文检索,至少建个视图,把所有字段拼起来再like吧。

可以说说你的具体想法吗?对这个不太了解,使用试图有什么好处。。?
0
永远的幸福
永远的幸福

selec * from where 字段1 like '%?%' and 字段2 like '%?%' .....

你试下。

总会有无法选择的时候
总会有无法选择的时候
虽然我已经解决了,但是还要谢谢你~^_^
返回顶部
顶部