求一条SQL查询语句

PastMaster 2009-03-31 12:45:47
问题描述:
表tb_table1 (useridList 列 指 员工工号,类型为ntext)
id title content useridList
1 aa asf 011,012,013,
2 bb asdd 011,013,015,016,

我想搜出包含011员工的所有信息。
select * from tb_table1 where ','+useridList like '%,011,%'
这样写 提示说“数据类型 varchar 和 text 在 add 运算符中不兼容。”
谁能给个好的解决方法。谢谢
...全文
155 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
sdhdy 2009-03-31
  • 打赏
  • 举报
回复
select * from tb_table1 where ','+cast(useridList as varchar(8000))+',' like '%,011,%' 
百年树人 2009-03-31
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 josy 的回复:]
SQL codeselect * from tb_table1 where ','+(cast(useridList as varchar(8000)) like '%,011,%'

如果这个字段的值不是非常巨大,可以试试上面这个转换
[/Quote]
写多了一个'('
select * from tb_table1 where ','+cast(useridList as varchar(8000)) like '%,011,%'
百年树人 2009-03-31
  • 打赏
  • 举报
回复
select * from tb_table1 where ','+(cast(useridList as varchar(8000)) like '%,011,%' 


如果这个字段的值不是非常巨大,可以试试上面这个转换
liangCK 2009-03-31
  • 打赏
  • 举报
回复
CAST(useridList AS VARCHAR(8000))
rex100 2009-03-31
  • 打赏
  • 举报
回复
帮顶
alex_delki 2009-03-31
  • 打赏
  • 举报
回复
select * from tb_table1 where ','+cast(useridList as varchar(8000)) like '%011%'
ai_li7758521 2009-03-31
  • 打赏
  • 举报
回复
select * from tb_table1 where ','+cast(useridList as varchar(8000)) like '%,011,%' 
usher_gml 2009-03-31
  • 打赏
  • 举报
回复
select * from tb where ','+cast(useridList as varchar(8000)) like '%,011%'
builderwfy 2009-03-31
  • 打赏
  • 举报
回复
select * from tb_table1 where ','+cast(useridList as varchar(8000)) like '%,011,%'
v_oneforever 2009-03-31
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 acupofnescafe 的回复:]
如果能确定useridlist字段的内容不会超过8000字符,那么可以先将useridlist转化为varchar类型后再检索。
select * from tb_table1 where ','+cast(useridList as varchar(8000))+',' like '%,011,%'
[/Quote]
that's right
幸运的意外 2009-03-31
  • 打赏
  • 举报
回复
如果能确定useridlist字段的内容不会超过8000字符,那么可以先将useridlist转化为varchar类型后再检索。
select * from tb_table1 where ','+cast(useridList as varchar(8000))+',' like '%,011,%'
htl258_Tony 2009-03-31
  • 打赏
  • 举报
回复
[Quote=引用楼主 PastMaster 的帖子:]
问题描述:
表tb_table1 (useridList 列 指 员工工号,类型为ntext)
id title content useridList
1 aa asf 011,012,013,
2 bb asdd 011,013,015,016,

我想搜出包含011员工的所有信息。
select * from tb_table1 where ','+useridList like '%,011,%'
这样写 提示说“数据类型 varchar 和 text 在 add 运算符中不兼容。”
谁能给个好的解决方法。谢谢
[/Quote]
try
select * from tb_table1 where ','+cast(useridList as varchar(8000)) like '%,011,%' 
等不到来世 2009-03-31
  • 打赏
  • 举报
回复
alter table tb_table1 alter column useridlist varchar(8000)
  • 打赏
  • 举报
回复
select * from tb where charindex(','+cast(useridList as varchar(8000))+',',',011,')>0
Android开发核心技术体系技术栈全景:基础架构:Java/Kotlin双语言体系、Android SDK、Gradle构建系统 UI体系:Jetpack Compose声明式UI、Material Design规范、多屏幕适配方案 核心组件:Activity生命周期管理、ViewModel数据持久化、WorkManager后台任务 性能优化:内存泄漏检测、ANR分析、ProGuard代码混淆 Android (Kotlin): 拥抱 Kotlin Coroutines 协程,精通 Jetpack Compose 声明式 UI,掌握 ViewModel, Room, WorkManager 等架构组件,深入性能优化与内存管理。 Flutter: 深度理解 Widget 树与渲染机制,掌握状态管理 (Provider, Riverpod, Bloc),熟练使用 Dart 异步编程,构建高性能、跨平台 (iOS/Android/Web/Desktop) 的富交互应用。 高阶技术方向: 架构设计:MVVM模式实现、模块化工程解耦 前沿领域:Flutter跨平台开发、机器学习Kit集成 工程实践:CI/CD自动化部署、Monkey测试策略 适用开发者群体: 具备编程基础的转型开发者 计算机相关专业在校学生 传统移动端开发技术升级者 智能硬件互联领域从业者 全套资料包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新 技术成长路径:从基础组件掌握到性能调优进阶,最终实现架构设计能力跃迁,完整覆盖移动应用开发全生命周期管理需

22,302

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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