请教一个sql语句

GritH2O 2009-08-21 09:41:51
有两个表
test表

c_id c_gongyi c_name
1 1,2 直
2 1,2 凹
3 2 复杂


test2表
c_id c_name
1 橡皮
2 拉弯


现在我想查出 这样一个结果

橡皮 直
橡皮 凹
拉弯 直
拉弯 凹
拉弯 复杂

条件就是 test2表的 c_id 在 test表的 c_gongyi 中
不知道怎么写
希望高手指点!!!!!!!!!!!
...全文
64 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ViewStates 2009-08-21
  • 打赏
  • 举报
回复
楼上,如果我在TEST表的那个c_gongyi中有这样一行怎么办?
120,121
你这样写会出现不该出现的数据的。
Js_xq 2009-08-21
  • 打赏
  • 举报
回复
跟上面楼上的补充


select t2.c_name,t1.c_name from test t1,test2 t2 where CHARINDEX(CAST(t2.c_id AS VARCHAR),t1.c_gongyi)>0
drogon123 2009-08-21
  • 打赏
  • 举报
回复
我只会写一半,后面的就不会了,这样:
select t2.c_name,t1.c_name from test t1,test2 t2 where t2.c_id=
下面的是我不会实现的,你再参考别人的
让t2.c_id分别=t1.c_gongyi中拆分开的字符
marhment 2009-08-21
  • 打赏
  • 举报
回复
huida
ViewStates 2009-08-21
  • 打赏
  • 举报
回复
select a.c_name,b.c_name from test a inner join test2 b on
(a.c_gongyi like convert(varchar(100),b.c_id)+',%'
or
a.c_gongyi like '%,'+convert(varchar(100),b.c_id)+',%'
or
a.c_gongyi like '%,'+convert(varchar(100),b.c_id)
or
a.c_gongyi =CONVERT(varchar(100),b.c_id)
)

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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