以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  sql中少的like多的怎么写?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=140304)

--  作者:happyft
--  发布时间:2019/9/3 9:52:00
--  sql中少的like多的怎么写?
普通查询都是用多的like少的,两侧加通配符如:
Select 工位 from 工位表 where \'/265947/368783/\' LIKE \'%/\' + ID号 + \'/%\'

但是倒过来用少的匹配就查不到值如:
Select 工位 from 工位表 where \'%/\' + ID号 + \'/%\' like \'/265947/368783/\'
这种写法没有出借,但查不到数据,用like应该如何写,当然用in的方式是可以,但要用\',\'替换很多斜杠,而且没规律比较麻烦

谢谢!


--  作者:有点蓝
--  发布时间:2019/9/3 10:03:00
--  
只能是多的like少的,如果ID的数据比后面的内容多可以这样

Select 工位 from 工位表 where \'/\' + ID号 + \'/\' like \'%/265947/368783/%\'

或者

Select 工位 from 工位表 where \'/\' + ID号 + \'/\' like \'%/265947/%\' and \'/\' + ID号 + \'/\' like \'%/368783/%\'

--  作者:HappyFt
--  发布时间:2019/9/3 10:07:00
--  
谢谢,明白了,但就是ID号的内容少,如果用下面那个把多个拆分再每个like比用in还麻烦,还是用in了