求一句sql语句 同时在多个字段中进行查询的

作者&投稿:澹诸 (若有异议请与网页底部的电邮联系)
SQL server数据库中,怎么对同时多个字段进行查询~

select * from 成绩表

where 语文<60 || 数学<60 || 英语<60 || 物理<60 || 化学<60 || 生物<60 || 地理<60

把这些姓插入到一个新表中

比如 表:A
name


。。。

select 姓名.* from 姓名,A where 姓名.name like A.name + '%'

建议设计:
写一个函数,传入你的KEY值,返回值为1/0(真/假,是否包含)
这个函数横向最大化囊括你所有需要比较的列,将你的key值传给函数去做应该不难,而且效率很高。
函数定义:
create function MyFun(@KeyWord nVarChar(1000))
reTurns Int
as
begin
declare @Return int=0
if exists(select 1 from TablaName
where n1 like '%'+@KeyWord+'%' or
n2 like '%'+@KeyWord+'%' or
n3 like '%'+@KeyWord+'%' or
n4 like '%'+@KeyWord+'%' or
n5 like '%'+@KeyWord+'%' or
……
nX like '%'+@KeyWord+'%' )

set @Return=1
return @Return
end

使用方法:
select * from TableName where dbo.MyFun(keyword)=1

如果你的表的列是无限增长列(我遇到过),那就不能这样用,建议还是定义一个表内列游标,将要比较的所有列强制转换成字符串合并;再进行字符串比较,但专业就有点……
如果还不能解决你的问题,可以发信息给我,我们再一起讨论一下。

首先弄清楚你是对字段太多,不想写下去还是咋的?
如果是这样你可以用如下sql:
SQL> SELECT column_name from user_tab_cols
2 where table_name='表名' and column_name like ‘%A%';
吧你需要的字段名查出来,然后利用excel来处理下,就能得到你想要的ql

求采纳 求推荐 求赞 呵呵

建立一个视图把那些字段串起来,减少or并列

这样查询就为
select * from myVeiw where aField like '%keyword%'

不过这样不能走索引的,效率还是很低下的

嵌套啊


洪江市18083003738: 求一句sql语句 同时在多个字段中进行查询的 -
邱奇丹仑: 建议设计:写一个函数,传入你的KEY值,返回值为1/0(真/假,是否包含)这个函数横向最大化囊括你所有需要比较的列,将你的key值传给函数去做应该不难,而且效率很高.函数定义:create function MyFun(@KeyWord nVarChar(1000))...

洪江市18083003738: 求一条SQL语句,两张表,同时查询他们其中的某些字段并分组,并删除其中的冗余的重复数据! -
邱奇丹仑: 简单写的话,以distinct 条件去除冗余,在一楼的回答中添加having()条件,语句要写3段,第一段里having(总分)80 复杂写的话需要把行标题转为列值..

洪江市18083003738: 求一条sql 语句统计多个字段的问题 -
邱奇丹仑: select '>70' as 分数, count(分数) from sc where 分数>70 union all select '>80' as 分数 , count(分数) from sc where 分数>80

洪江市18083003738: sql连接运算语句( 连接多个字段)
邱奇丹仑: select a.*,b.* from 火车票 as a inner join 线路 as b on a.车次=b.车次 and a.线路编号=b.线路编号

洪江市18083003738: 用一条SQL语句同时更新一个表中的两个字段 -
邱奇丹仑: 用,隔开可以同时更新多字段,如果update table_text set 字段A='1',字段B='2'.

洪江市18083003738: 怎么书写多个字段组合在一起作为主码的sql语句 -
邱奇丹仑: select 字段A+字段B+字段C as 别名 from 表A不知道你说的是不是这种

洪江市18083003738: 求一个段SQL语法,查询某表的多个字段 用的易语言软件 -
邱奇丹仑: 看是用在ASP中或是易语言中,ABC是变量还是常量,另外是不是模糊查询,这样一来就要分好几种情况了(以下代码不含模糊查询,如果要用需要加%号):一、ABC为常量 不分易语言和ASP 如果字段1-4是文本内容,SQL语句如下:"...

洪江市18083003738: sql怎么用一条语句查询多个表的字段啊? -
邱奇丹仑: select h.name,h.phone,i.need,i.nname from hotel h left join info i on i.[对应字段]=h.[对应字段]

洪江市18083003738: 若sql语句中order by指定了多个字段,则怎么排序? -
邱奇丹仑: order by id desc,time desc 先是按 id 降序排列 (优先) 如果 id 字段 有些是一样的话 再按time 降序排列 (前提是满足id降序排列) order by name, age desc name优先 name一样的话,就按age排序. 后面再加第三列的话,也是一样 以此类推...

洪江市18083003738: sql多表查询同一字段的语句怎么写?? -
邱奇丹仑: select a.title as titleA,b.title as titleB,c.title as titleC from A a,B b,C c where .....

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网