首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

两个表的查询有关问题

2012-03-02 
两个表的查询问题。表1中有一个字段AC,若干记录行,如下:stmctc表2中有一个字段DA现在表2中的记录行中字段DA

两个表的查询问题。
表1中有一个字段AC,若干记录行,如下:
st
mc
tc

表2中有一个字段DA

现在表2中的记录行中字段DA的字符包含表1中AC的记录的内容,比如stb包含st、mtc包含tc

现在要求使用一条查询语句,查找出包含表1中内容的表2的记录。

谢谢大家。


[解决办法]

create table tb1(ac varchar(10))

insert into tb1 values( 'st ')
insert into tb1 values( 'mc ')
insert into tb1 values( 'tc ')

create table tb2(da varchar(10))

insert into tb2 values( 'stb ')
insert into tb2 values( 'mtc ')


select tb2.* from tb1,tb2 where charindex(tb1.ac,tb2.da)> 0
[解决办法]
楼上正确,我给出结果.

create table tb1(ac varchar(10))
insert into tb1 values( 'st ')
insert into tb1 values( 'mc ')
insert into tb1 values( 'tc ')

create table tb2(da varchar(10))
insert into tb2 values( 'stb ')
insert into tb2 values( 'mtc ')

select tb2.* from tb1,tb2 where charindex(tb1.ac,tb2.da)> 0

drop table tb1,tb2

/*
da
----------
stb
mtc

(所影响的行数为 2 行)

*/

[解决办法]
--或者如下:
create table tb1(ac varchar(10))
insert into tb1 values( 'st ')
insert into tb1 values( 'mc ')
insert into tb1 values( 'tc ')

create table tb2(da varchar(10))
insert into tb2 values( 'stb ')
insert into tb2 values( 'mtc ')

select tb2.* from tb1,tb2 where tb2.da like '% ' + tb1.ac + '% '
/*
da
----------
stb
mtc

(所影响的行数为 2 行)

*/

drop table tb1,tb2

热点排行