欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

一个union的有关问题

更新时间: 2014-01-05 02:18:25 责任编辑: Author_N1

 

请教大家一个UNION的问题
我现在有两个表,一个表是[OrderInfoTable],另一个表是[ContactTable]
[OrderInfoTable]有5列,分别是[OrderNum][Express][ExpressNum][Operator][Goods],[OrderNum]为主键
[ContactTable]有4列,分别是[UserName][PhoneNum][Address][OrderNum],其中[OrderNum]是外键,[UserName]是主键。
我想查询[OderNum]=xxxx,然后将他们列出来,成[UserName][PhoneNum][Address][OrderNum][Express][ExpressNum][Operator][Goods]这样,给我的别的程序用,那这样的查询是不是应该用UNION呀?但是用UNION后提示错误:使用 UNION、INTERSECT 或 EXCEPT 运算符合并的所有查询必须在其目标列表中有相同。所以不知道应该怎么写这个查询语句?
--参考方法--
用left join 就可以:

select c.[UserName],c.[PhoneNum],c.[Address],c.[OrderNum],
       ct.[Express],ct.[ExpressNum],ct.[Operator],ct.[Goods]
from [ContactTable] c
left join [OrderInfoTable] ct
       on c.[OrderNum] = ct.[OrderNum]
where c.[OrderNum] = xxx
      

--参考方法--

--使用关联查询

select [UserName],[PhoneNum],[Address],a.OrderNum,[Express],[ExpressNum],[Operator],[Goods]
from ContactTable a
inner join OrderInfoTable b on a.OderNum=b.OderNum
where a.OderNum=xxx
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:18:25
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/8297/
本文WWW.DOC100.NET DOC100.NET版权所有。