当前位置:首页 » 编程语言 » sqllike子查询
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sqllike子查询

发布时间: 2022-09-26 09:45:37

sql 如何用like模糊子查询

select * from a where [name] like (select top 1 '%'+convert(varchar(200),code)+'%' from b )

查询分析器中测试通过
程序中的话要保证传递给sql的是这个

② 怎样在子查询中使用like

2楼的正解,如果方法觉得复杂的话,用这个也可以,
以SQL SERVER为例子,必要的话可以做procere:

declare @nearbystop varchar(max)
set @nearbystop = (select nearbystop from areaTable where a_name like '%校场%')
select * from bus where lines like '%'+@nearbystop+'%'

执行结果:
--------------------------------------------------------------------
id code lindes
1 1路 火车站-百货大楼-体育馆-公交公司
2 2路 汽车站-火车站-建设路-西市场-建材市场

搞定!收工

③ sql 子查询如何写

select id from 表A
full join
(select id,count(id) from 表B group by id)
on A.id=B.id

④ 在SQL 脚本中如何使用LIKE嵌套子查询

select 商品表.*,类别表.*
from 商品表, 类别表
where 商品表.proctcategory like '%' + 类别表.proctcategory + '%'

⑤ sql 分组子查询怎么写

你的意思是不是“找出所有status字段不是OK的BarCode,然后显示找到的这些BarCode对应的所有的记录”
比如:某个BarCode有三条记录,这三条记录中有一条status不是OK,那么就显示这三条记录;另一个BarCode有亮条记录,他们的status状态都是OK,那么就不显示。是这个意思不是。
如果是那么不需要分组,直接子查询就可以。
子查询的内容是查询status!='OK'(因为不知道是不是只有NG一种不OK的状态所以用了“不等于”,具体的要根据业务情况来定)的BarCode。
外层就是利用子查询查到的BarCode去查询就可以了,可以直接用in或者exist都可以。
比如某个编号为1111的有三条数据,其中有一条的status不是ok,那么子查询就会找到这条不是ok的记录,并返回编号1111,外层查询在利用编号1111,查到全部的三条记录。

⑥ sql like值为子查询结果时怎么写呢

like 后边加的是通配符 % 或者 _ (百分号 或 下划线)

并且like后边的内容需要放在两个单引号里的。

例如 :

like ‘%s%' 或 's_' 等等。

你上边的那句,其实将like 改成 in 就可以了。

不需要用like 语句。

⑦ sql中用like模糊匹配,%前置导致索引失效,完成子查询后再对某字段展开模糊匹配会好点吗 还是更慢

like在在意效率的场景下不要用,尽量用利用有索引的列查询,可以借助sql工具查看执行后索引使用情况,好像是explan,很久没用记不清了,中文叫执行计划,查询语句都能给出索引使用情况,先缩小数据范围,再用like语句效率肯定会好,当然数据量也是决定因素,几百、上千万以上的数据需要做更精细的查询优化。

⑧ 在SQL 脚本中如何使用LIKE嵌套子查询

ProctCategory 123 是一个类别?还是1、2、3类别都包括了?
如果是一个类别:
select * from 类别表 where ProctCategoryId =
(select ProctCategory from 商品表 where Proctname ='商品1')

如果商品1同时属于1、2、3三个类别,建议在商品表ProctCategory 字段不要存储为123而改为1,2,3,这样便于查询:
select * from 类别表 where ProctCategoryId in
(select ProctCategory from 商品表 where Proctname ='商品1')