| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 733 人关注过本帖
标题:[求助]SQL多表查询问题
只看楼主 加入收藏
soullei
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-5-11
收藏
 问题点数:0 回复次数:4 
[求助]SQL多表查询问题

数据库
表 nodes
字段 no Name
001 a1
002 a2
003 a3
004 a4
表 employe
字段 no Name
01 b1
表 ordertrack
字段 Order_id OperDT OperNode NextNode Operator Descr
1 21:00 001 01 1
1 22:00 001 002 01 2
1 23:00 002 01 1
1 00:00 002 003 01 2

其中 nodes.No=ordertrack.OperNode employe.No=ordertrack.Operator
nodes.No=ordertrack.NextNode
就是说 ordertrack 表里的 OperNode 和 NextNode取的值都是nodes表里的No字段

通过查询 Order_id 并且判断 Descr 的值
得到
Order_id OperDT Nodes.name
1 21:00 a1 (Descr=1 调取OperNode对应的Nodes.name)
22:00 a2 (Descr=2 调取OperNode对应的
23:00 a2 (Descr=1 调取OperNode对应的
00:00 a3 (Descr=2 调取OperNode对应的


现在的SQL语句是这样写的
select Order_id,OperDT,Descr,a.name as bname,b.name as dname,OperNode,NextNode,employe.name as cname,employe.tel as ctel from ordertrack,employe,nodes a,nodes b where a.No=ordertrack.OperNode and b.No=ordertrack.NextNode and employe.No=ordertrack.Operator and Order_id= "+si

这样写 where a.No=ordertrack.OperNode and b.No=ordertrack.NextNode and employe.No=ordertrac...... 要同时满足 a.No=ordertrack.OperNode 和b.No=ordertrack.NextNode 但由于表里NextNode有时为空 所以查询出来结果不全
怎样写只满足这两个任一条件即可?或者其他办法怎样进行查询得到这个结果

我写成 where (a.No=ordertrack.OperNode or b.No=ordertrack.NextNode) and employe.No=ordertrac...... 查询出来竟然是 nodes 里面 name 的全部记录

搜索更多相关主题的帖子: SQL 数据库 字段 employe Order 
2007-06-21 11:06
madpbpl
Rank: 4
等 级:贵宾
威 望:11
帖 子:2876
专家分:244
注 册:2007-4-5
收藏
得分:0 
试试
(a.No=ordertrack.OperNode and employe.No=ordertrac.Operator)
or (b.No=ordertrack.NextNode and employe.No=ordertrac.Operator)
2007-06-21 11:21
soullei
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-5-11
收藏
得分:0 
这样不对  直接报错
2007-06-21 13:04
madpbpl
Rank: 4
等 级:贵宾
威 望:11
帖 子:2876
专家分:244
注 册:2007-4-5
收藏
得分:0 
select * from ordertrack inner join nodes on nodes.No=ordertrack.OperNode and nodes.No=ordertrack.NextNode where Operator in (select [no] from employe)
再试试这个
2007-06-21 16:08
我本沉默
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2007-6-17
收藏
得分:0 
看你了的不,我头晕。把表设计重新改一下。1

2007-06-21 16:39
快速回复:[求助]SQL多表查询问题
数据加载中...
 
   



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

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