| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1593 人关注过本帖
标题:二表查询
只看楼主 加入收藏
思远
Rank: 1
等 级:新手上路
帖 子:75
专家分:0
注 册:2007-4-25
收藏
 问题点数:0 回复次数:3 
二表查询
create table  A
(
ID  int identity primary key,
Num varchar(20),
Date  datetime,
OperatorID  int,
Status  bit
)
create table  B
(
ID int identity primary key,

OperatorName varchar(20)
)


怎么查找出A.ID,Num,Date,OperatorName,Status(--要显示中文)
--0为未发货 1为已发货
如果我用A.OperatorID=b.ID的话,只能查找出状态为1的数据
因为status=0时,operatorID是为空的

如果用select into  把状态为1的先插入一个临时表,在用insert into 把状态为0的插入到这表,不过有点烦,有没有简单的办法1?
搜索更多相关主题的帖子: int identity Num Status key 
2008-05-27 19:18
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
收藏
得分:0 
"如果我用A.OperatorID=b.ID的话,只能查找出状态为1的数据 "
用右外连接解决
"因为status=0时,operatorID是为空的"
CASE status WHEN  0 THEN  '已发货'  ELSE '未发货'  END
2008-05-27 21:01
wyl918
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-2-7
收藏
得分:0 
select A.ID,Num,Date,OperatorName,case Status when 0 then '未发货' else '已发货' end as Status from A left Join B on OperatorID=B.ID
2008-09-17 12:29
上官逸淳
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-9-12
收藏
得分:0 
应该是左外连接吧?

[[it] 本帖最后由 上官逸淳 于 2008-9-17 16:26 编辑 [/it]]
2008-09-17 15:40
快速回复:二表查询
数据加载中...
 
   



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

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