量表联合的问题

test88666 2014-01-21 05:15:31
有两个表如下:
a表
id name1
1 線
2 掛牌
3 紙箱
4 貼紙
b表
id name2
1 501線
2 502線
3 503線
4 膠袋貼紙
5 紙箱貼紙
希望可以达成如下效果:
id name1 name2
1 線 501線
1 線 502線
1 線 503線
4 貼紙 膠袋貼紙
4 貼紙 紙箱貼紙
也就是说,假如a表字段name1包含在b表字段name2中,就联合在一起。
请不吝赐教,在线等,多谢了!
...全文
91 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
test88666 2014-01-21
  • 打赏
  • 举报
回复
多谢楼上两位!
LongRui888 2014-01-21
  • 打赏
  • 举报
回复
create table a(id int,	name1 varchar(20))

insert into a
select 1	,'線' union all
select 2	,'掛牌' union all
select 3	,'紙箱' union all
select 4	,'貼紙'

create table b(id int,	name2 varchar(20))

insert into b
select 1	,'501線' union all
select 2	,'502線' union all
select 3	,'503線' union all
select 4	,'膠袋貼紙' union all
select 5	,'紙箱貼紙'
go

select a.id,a.name1,b.name2
from b
inner join a
        on b.name2 like '%'+a.name1
/*
id	name1	name2
1	線	501線
1	線	502線
1	線	503線
4	貼紙	膠袋貼紙
4	貼紙	紙箱貼紙
*/  
發糞塗牆 2014-01-21
  • 打赏
  • 举报
回复
3应该也复合的吧?
----------------------------------------------------------------
-- Author  :DBA_Huangzj(發糞塗牆)
-- Date    :2014-01-21 17:16:18
-- Version:
--      Microsoft SQL Server 2012 (SP1) - 11.0.3128.0 (X64) 
--	Dec 28 2012 20:23:12 
--	Copyright (c) Microsoft Corporation
--	Enterprise Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: )
--
----------------------------------------------------------------
--> 测试数据:[a]
if object_id('[a]') is not null drop table [a]
go 
create table [a]([id] int,[name1] varchar(4))
insert [a]
select 1,'線' union all
select 2,'掛牌' union all
select 3,'紙箱' union all
select 4,'貼紙'
--> 测试数据:[b]
if object_id('[b]') is not null drop table [b]
go 
create table [b]([id] int,[name2] varchar(8))
insert [b]
select 1,'501線' union all
select 2,'502線' union all
select 3,'503線' union all
select 4,'膠袋貼紙' union all
select 5,'紙箱貼紙'
--------------开始查询--------------------------


select a.id,a.name1,b.name2
 from [a] full JOIN [b] ON CHARINDEX(name1,name2,1)>0
 WHERE b.id IS NOT NULL 
 ORDER BY a.id
----------------结果----------------------------
/* 
id          name1 name2
----------- ----- --------
1           線     501線
1           線     502線
1           線     503線
3           紙箱    紙箱貼紙
4           貼紙    紙箱貼紙
4           貼紙    膠袋貼紙

*/

27,582

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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