CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  应用实例

怎样选出这样的记录?

楼主TripleH()2003-11-02 16:25:24 在 MS-SQL Server / 应用实例 提问

我给学生编码这样:如:200501001代表2005级一班的001号学生,学生编码为001起始,完整编码为200501001,如果200501001与200501003之间没有学生,那么002这学号就没有人,怎样选出200501002这个学号?并且选之前要判断所有的学号是否中间有断开的,有的话就选出那个断的号码,而且要注意断开的学号如果有多个,那么就选出最小的那个?怎么办? 问题点数:0、回复次数:7Top

1 楼pengdali()回复于 2003-11-02 16:27:42 得分 0

select   *   from   表   where   编码+1   not   in   (select   编码   from   表)Top

2 楼pengdali()回复于 2003-11-02 16:29:19 得分 0

select   *   from   表   where   编码   like   '200501%'   and   编码+1   not   in   (select   编码   from   表)  
  and   编码   not   in   (select   max(编码)   from   表   where   编码   like   '200501%')  
  Top

3 楼TripleH()回复于 2003-11-02 16:54:41 得分 0

我是想选出编码中差的那个编号,我也不知道是哪段之内有断开的号码!就是需要检查一下。Top

4 楼pengdali()回复于 2003-11-02 16:56:47 得分 0

select   *   from   表   where   编码+1   not   in   (select   编码   from   表)  
  and   编码   not   in   (select   max(编码)   from   表   where   group   by   left(编码,6))Top

5 楼TripleH()回复于 2003-11-02 17:08:54 得分 0

我可能没有说清楚我的意思,我是想如果200101005与200501010之间缺号,没有200101006,200101007等这几个号码,怎样知道差这几个号码?并且用一个Edit1来显示,差的最小号码为200101006,就显示这个号码。如果号码段中如:200101001与200101045之间有几个缺口,怎么办?Top

6 楼pengdali()回复于 2003-11-02 17:13:23 得分 0

我写的就是当有几个缺口的时候把每个缺口的最小一个显示出来。Top

7 楼pengdali()回复于 2003-11-02 17:13:55 得分 0

如果你还要最小的:  
   
  select   min(编码)   编码   from   表   where   编码+1   not   in   (select   编码   from   表)  
  and   编码   not   in   (select   max(编码)   from   表   where   group   by   left(编码,6))  
  Top

相关问题

  • 怎样选出10条最新记录???
  • 怎么选出这样的记录啊?
  • 怎样得到从数据库选出的记录数?
  • sql中怎样选出这样的记录:两表(table1,table2)中有一个共同的字段number(char型),我想选出这样的number对应的记录:这个number在tabl
  • 怎样在数据库中选出字段内容有重复的记录?
  • 怎样选出某字段下的值不含有‘ZM’的所有记录?
  • 怎样把select语句选出来的记录放到另一个新建的表中?
  • ◆要选出最后的一条记录◆
  • 如何筛选出重复的记录?
  • 选出个数等于3的记录

关键词

  • 编码
  • 学号
  • 学生
  • 选出
  • 号码
  • 断开
  • 缺口
  • 显示
  • from表where
  • max

得分解答快速导航

  • 帖主:TripleH

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo