| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1098 人关注过本帖
标题:查出两年连续不过的人sfzh和leibie,这样做对吗?请各位帮帮忙!
只看楼主 加入收藏
关小彤
Rank: 1
等 级:新手上路
帖 子:114
专家分:0
注 册:2006-12-7
收藏
 问题点数:0 回复次数:17 
查出两年连续不过的人sfzh和leibie,这样做对吗?请各位帮帮忙!
例如:04、05、06三个表中存放个人的信息及考试成绩。
数据库结构如下:
zkzbh 表示准考证编号
sname 表示姓名
leibie表示类别
sfzh表示身份证明号 (一个人一个sfzh)
result表示考试结果

我是这样做的
select no2006.* from no2005,no2006 where no2006.result='未通过' and no2005.result='未通过' and no2006.leibie=no2005.leibie and no2006.sfzh=no2005.sfzh
这是选出05、06两年连续不过的人的名单,并把结果插入no0506中

select no2006.* from no2004,no2006 where no2006.result='未通过' and no2004.result='未通过' and no2006.leibie=no2004.leibie and no2006.sfzh=no2004.sfzh
这是选出0406两年连续不过的人的名单,并把结果插入到no0406中

在用同样的方法得出0405两年的结果
然后选出0405连续考了两次没过06年没报名的人的名单

最后把0405连续考了两次06年没报名的人的sfzh和leibie加上

select sfzh,leibie from no0406 union select sfzh,leibie from no0506


不知道大家明白没有

[此贴子已经被作者于2007-1-12 14:58:57编辑过]

搜索更多相关主题的帖子: leibie sfzh 
2007-01-12 14:57
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
收藏
得分:0 

明白了.


飘过~~
2007-01-12 15:02
关小彤
Rank: 1
等 级:新手上路
帖 子:114
专家分:0
注 册:2006-12-7
收藏
得分:0 
谢谢楼上的。我这样做对吗?有问题吗?

2007-01-12 15:05
棉花糖ONE
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:2987
专家分:0
注 册:2006-7-13
收藏
得分:0 

select sfzh,leibie from
(
select sfzh,leibie from no05 where result='未通过'
union all
select sfzh,leibie from no04 where result='未通过'
union all
select sfzh,leibie from no06 where result='未通过'
) a group by sfzh,leibie having count(1)=2

不知道行不行,你试试吧


26403021 sql群 博客 blog./user15/81152/index.shtml
2007-01-12 15:09
关小彤
Rank: 1
等 级:新手上路
帖 子:114
专家分:0
注 册:2006-12-7
收藏
得分:0 

谢谢两位版主我试试看


2007-01-12 15:11
关小彤
Rank: 1
等 级:新手上路
帖 子:114
专家分:0
注 册:2006-12-7
收藏
得分:0 
jinyuzhang版主好像不对,这样查出来的结果是11288条记录。
我查的0506两年的就有11738条。

2007-01-12 15:13
关小彤
Rank: 1
等 级:新手上路
帖 子:114
专家分:0
注 册:2006-12-7
收藏
得分:0 

我知道了应该是a group by sfzh,leibie having count(1)>=2
但是查出的结果条数和我的不一样。我的是14414
你的是14478。结果不一样说明其中有一个不对。不过我没看出哪个有问题。

[此贴子已经被作者于2007-1-12 15:29:29编辑过]


2007-01-12 15:27
棉花糖ONE
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:2987
专家分:0
注 册:2006-7-13
收藏
得分:0 
那我也不清楚(不过我模拟了一下,我的语句和你的语句查出的结果是一样的啊)

26403021 sql群 博客 blog./user15/81152/index.shtml
2007-01-12 15:30
棉花糖ONE
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:2987
专家分:0
注 册:2006-7-13
收藏
得分:0 
a group by sfzh,leibie having count(1)>=2,怎么能是大于等于2呢,不是一个sfzh最多只能考两次吗

26403021 sql群 博客 blog./user15/81152/index.shtml
2007-01-12 15:31
棉花糖ONE
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:2987
专家分:0
注 册:2006-7-13
收藏
得分:0 
楼主你把选出的三个结果集中,sfzh相同的除去了没有.如果一个人可以考三次的话,sfzh有可能被重复选了

26403021 sql群 博客 blog./user15/81152/index.shtml
2007-01-12 15:38
快速回复:查出两年连续不过的人sfzh和leibie,这样做对吗?请各位帮帮忙!
数据加载中...
 
   



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

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