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

查询里A表字段中包含B表字段有关问题

2012-09-03 
查询里A表字段中包含B表字段问题查询里A表字段中包含B表字段问题比如 AA表如xhshengccj1河南羚锐生物药业2

查询里A表字段中包含B表字段问题
查询里A表字段中包含B表字段问题
比如 AA表如
xh shengccj
1 河南羚锐生物药业  
2 四川蜀中制药有限公司  
3 海口奇力制药

BB表 
xh shengccj
1 河南羚锐生物
1 河南中杰药业  
2 四川蜀中制药
2 海口奇力制药
3 河南中杰药业 
我想查询 的条件为 A表xh=b表xh a表中shengccj 必须在b表中shengccj的
结果为
xh shengccj
1 河南羚锐生物药业  
2 四川蜀中制药有限公司  


我是这么写的 select a.xh,b.shengccj from AA a,BB b where a.xh=b.xh and a.shengccj like '%'+b.shengccj+'%'
但得出的结果为空 那里错了呢 正确应该怎么写 求指教
   
   


[解决办法]

SQL code
IF EXISTS (SELECT 1 FROM SYSOBJECTS WHERE name = 'AA')BEGIN    DROP TABLE AAENDGOCREATE TABLE AA(    xh INT,    shengccj VARCHAR(100))GOINSERT INTO AASELECT 1, '河南羚锐生物药业' UNION  SELECT 2, '四川蜀中制药有限公司' UNION    SELECT 3, '海口奇力制药'GOIF EXISTS (SELECT 1 FROM SYSOBJECTS WHERE name = 'BB')BEGIN    DROP TABLE BBENDGOCREATE TABLE BB(    xh INT,    shengccj VARCHAR(100))GOINSERT INTO BBSELECT 1, '河南羚锐生物' UNIONSELECT 1, '河南中杰药业' UNION   SELECT 2, '四川蜀中制药' UNIONSELECT 2, '海口奇力制药' UNIONSELECT 3, '河南中杰药业'GOSELECT AA.*FROM AA INNER JOIN BB ON AA.xh = BB.xh AND CHARINDEX(BB.shengccj,AA.shengccj) > 0xh    shengccj1    河南羚锐生物药业2    四川蜀中制药有限公司
[解决办法]
/**(26)
 * program:CSDN问答练习
 * username:zsq
 * cteatetime:2012-8-24
 * 心得:?
 * 配置:sql server 2008
 */
-- 查询里A表字段中包含B表字段问题
--比如 AA表如
--xh shengccj
--1 河南羚锐生物药业
--2 四川蜀中制药有限公司
--3 海口奇力制药

--BB表 
--xh shengccj
--1 河南羚锐生物
--1 河南中杰药业
--2 四川蜀中制药
--2 海口奇力制药
--3 河南中杰药业 
--我想查询 的条件为 A表xh=b表xh a表中shengccj 必须在b表中shengccj的
--结果为
--xh shengccj
--1 河南羚锐生物药业
--2 四川蜀中制药有限公司


--我是这么写的 select a.xh,b.shengccj from AA a,BB b where a.xh=b.xh and a.shengccj like '%'+b.shengccj+'%'
--但得出的结果为空 那里错了呢 正确应该怎么写 求指教
 
 DECLARE @a TABLE (xh INT IDENTITY(1,1),shengccj NVARCHAR(255))
 DECLARE @b TABLE (xh INT ,shengccj NVARCHAR(255))
 INSERT INTO @a ( shengccj )
SELECT '河南羚锐生物药业' UNION ALL
SELECT '四川蜀中制药有限公司' UNION ALL
SELECT '海口奇力制药'
 INSERT INTO @b ( xh , shengccj )
SELECT 1,'河南羚锐生物' UNION ALL
SELECT 1,'河南中杰药业' UNION ALL
SELECT 2,'四川蜀中制药' UNION ALL
SELECT 2,'海口奇力制药' UNION ALL
SELECT 3,'河南中杰药业' 

select a.xh,a.shengccj from @a a,@b b where a.xh=b.xh and a.shengccj like '%'+b.shengccj+'%'
 ----------------------------------------------end 

按你的要求做的,还是你的代码,只是把select后边的b.shengccj改成a.shengccj 结果:
-------------------------------
1河南羚锐生物药业
2四川蜀中制药有限公司

热点排行