sql字段为逗号分开的字符串值的关联查询
2024-08-25 03:54:16
1.TREE表:
[strID] [int] IDENTITY(1,1) NOT NULL,
[strName] [nvarchar](50) NOT NULL,
2.SubInfo
CREATE TABLE [dbo].[SubInfo](
[SuBID] [int] NOT NULL,
[SubTreeID] [nvarchar](max) NULL,
SQL语句为:
select a.strID,a.strName from Tree as a where exists(select * from SubInfo where charindex(cast(a.strID as varchar(max))+',',SubTreeID)>0)
这里红色加的分号必须要加上,不然的花,如果是215,连21也会区配.
查询后结果为:
如果SubTreeID:1,2,3,215则select a.strID,a.strName from Tree as a where exists(select * from SubInfo where charindex(cast(a.strID as varchar(max)),SubTreeID)>0)
查询结果为
本来21为思茅的是不应该查询出来的,所以要叫逗号来处理
4.select a.strID,a.strName,b.* from Tree as a join SubInfo as b on charindex(cast(a.strID as varchar(max))+',',SubTreeID)>0
这个是把SubInfo 表的数据也显示出来
结果为:
最新文章
- 写了个项目 Web-Rtmp: 使用 WebSocket 在网页上播放 RTMP 直播流
- python有超时的windows系统时间设置代码
- 字符串专题:KMP POJ 3561
- 【Lua】Lua的几点优化原则
- [HTML5] 飞龙天惊-HTML5学习系列
- Dedecms v5.7 最新注入分析
- 3DMark Sky Driver
- Java之Arrays.asList陷阱
- [原]性能优化之Hibernate缓存讲解、应用和调优
- ";php-cgi.exe - FastCGI 进程意外退出"; 解决办法
- [编织消息框架][netty源码分析]14 PoolChunk 的 PoolSubpage
- windows服务管理操作
- ejabberd开发和部署
- 浅谈Android布局
- notepad++中双击选中字符串高亮颜色设置
- 002_Python多线程相当于单核多线程的论证
- unity中加载场景不销毁以及切换场景重复实例化
- 20175311 2018-2019-2 《Java程序设计》第五周学习总结
- Debian 9 源配置
- SUSE12的虚拟机安装以及ORACLE12C的安装