怎么写一个存储过程,对整个表表进行模糊查询呢?

delphichuxue 2003-10-10 12:03:39
例如表里面有10个字段,包括有int,varchar,datetime,numeirc等类型!
sqlserver有循环查找吗?
如下表,对这个表进行模糊查找,存储过程如何写?参数要由前台输入的!
编号  名称   规格    价格  日期 备注
bh    gcmc   gcgg   jiage datetime   bz

我在程序中对整个表字段进行循环,模糊查找!速度感觉还可以,可问题是我很多个表字段有很多!而且程序完成后,公司局限网至少有100个站点要用到,我怕这里影响效率!能否写能存储过程呢?谢谢!
...全文
45 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
txlicenhe 2003-10-10
  • 打赏
  • 举报
回复
create proc 名
@参数 varchar(10)
as
select * from xxx where charindex(@参数,字段1+','+字段2+','+字段3)>0
pengdali 2003-10-10
  • 打赏
  • 举报
回复
create proc 名
@参数 varchar(10)
as
select * from xxx where aa like '%'+@参数+'%' or bb like '%'+@参数+'%'.....
pengdali 2003-10-10
  • 打赏
  • 举报
回复
create proc 名
@参数 varchar(10)
as
select * from xxx where aa like '%'+@参数+'%' and bb like '%'+@参数+'%'.....
Chuff 2003-10-10
  • 打赏
  • 举报
回复
Sea2001 2003-10-10
  • 打赏
  • 举报
回复
大力,麻烦你能不能帮我看下这个帖,拜托了,谢谢
http://expert.csdn.net/Expert/topic/2341/2341192.xml?temp=.2813074
(问一一个琢磨不透的问题,关于readtext,有兴趣可以来看看)
pengdali 2003-10-10
  • 打赏
  • 举报
回复
一样的。

set @a=''

select @a=''

都可以。
Sea2001 2003-10-10
  • 打赏
  • 举报
回复
大力,能不能告诉我,你为什么要使用set @a=''而不是select @a=''
zjcxc 元老 2003-10-10
  • 打赏
  • 举报
回复
大力的手也太快了吧.
alphayycn 2003-10-10
  • 打赏
  • 举报
回复
up 收藏。
lansquenet 2003-10-10
  • 打赏
  • 举报
回复
大力的这个select太经典了,很有技巧的
我还准备开个游标的
其实我看过大力N次这么用了
可惜每次都想到游标去了
下次我要抢着答

up

pengdali 2003-10-10
  • 打赏
  • 举报
回复
create proc 名
@表名 varchar(100),
@参数 varchar(100)
as
declare @a varchar(8000)
set @a=''
select @a=@a+' and '+name+' like ''%'+@参数+'%''' from syscolumns where id=object_id(@表名)

set @a=right(@a,len(@a)-4)

exec('select * from '+@表名+' where '+@a)
go
伍子V5 2003-10-10
  • 打赏
  • 举报
回复
create procdure pd_name @条件 varchar(100)
as
declare @列名 varchar(100)
set @列名=COL_NAME(OBJECT_ID('表名'),4)
exec('select * from 表名 where '+@列名+'='''+@条件+'''')

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧