| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 606 人关注过本帖
标题:这个SQL怎么写?
只看楼主 加入收藏
南川
Rank: 4
等 级:业余侠客
威 望:1
帖 子:111
专家分:235
注 册:2010-6-25
结帖率:86.21%
收藏
已结贴  问题点数:25 回复次数:4 
这个SQL怎么写?
我有2张表,第一张表的其中一行数据是   
No     value
1      32,33,34
 
我需要从第二表中查出相应数据
Id      Name
32      aaaaa
33      bbbbb
34      ccccc
搜索更多相关主题的帖子: SQL 
2010-12-20 16:06
png
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:126
专家分:880
注 册:2010-10-6
收藏
得分:4 
假定表1的No与表2的Id是同一对象的同一属性, 可以用类似 -

Select TableOne.*, TableTwo.*
From TableOne join TableTwo on TableOne.No = TableTwo.Id
Where TableOne.No = 1
2010-12-20 23:16
q32595667
Rank: 1
等 级:新手上路
帖 子:1
专家分:1
注 册:2010-12-20
收藏
得分:1 
支持!
2010-12-20 23:53
juejitianya
Rank: 4
等 级:业余侠客
威 望:3
帖 子:44
专家分:272
注 册:2009-9-11
收藏
得分:20 
程序代码:
--模拟数据环境
if exists(select * from sysobjects where name = 't2' and xtype = 'u')
    drop table t1
Go
    create table t1(no int, value varchar(10))
Go
    insert into t1 values(1, '32,33,34')
    insert into t1 values(2, '22,23,24')
Go
    if exists(select * from sysobjects where name = 't2' and xtype = 'u')
        drop table t2
Go
    create table t2(ID int, name varchar(10))
go
    insert into t2
    select 32, 'aaaaaa'
    union
    select 33, 'bbbbbb'
    union
    select 34, 'cccccc'
    union
    select 22, 'dddddd'
    union
    select 23, 'eeeeee'
    union
    select 24, 'ffffff'
   
   
Go 

--执行相应的查询操作
    select t1.no, t2.ID, t2.name
    from t1
    inner join t2 on t1.value like '%'+CAST(t2.id as varchar(10))+'%'
   
你看看是否可以满足你的需求。
因为时间原因,这个语句没有对模糊查询条件的严密性进行推敲,供你做个参考!
2010-12-21 10:41
南川
Rank: 4
等 级:业余侠客
威 望:1
帖 子:111
专家分:235
注 册:2010-6-25
收藏
得分:0 
select t1.no, t2.ID, t2.name
    from t1
    inner join t2 on  ','+t1.value+',' like '%,'+CAST(t2.id as varchar(10))+',%'
貌似这样更严谨点
2010-12-22 09:16
快速回复:这个SQL怎么写?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013008 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved