点滴积累,融会贯通

-----喜欢一切有兴趣的东西

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  269 随笔 :: 0 文章 :: 418 评论 :: 17 引用
2006-10-8
表数据:tab1
id    name  num
A     a         9
A     b       11
B     f         7
B     g         8
所要结果:
A   b    11
B    g    8
SQL 语句
select * from tab1
where (num in
              (select max(num) from tabl group by id)
           )
解释说明,之所以要用子查询,目的是要取全部的tab1中的所有列
如果不用子查询,当tab1中含有text或image列的时候是不可以写在group by子句中的


根据生日获得当前年龄
declare @birthday datetime
set @birthday = '1979/8/30'
select datediff(yy,@birthday,getdate())

取insert语句产生的id
seelct   @@identity   或select   scope_identity()
posted on 2006-10-08 17:49 小寒 阅读(605) 评论(2)  编辑 收藏 网摘 所属分类: 数据库设计UNION技巧

评论

Bug﹕
id name num
A a 8
A b 11
B f 7
B g 8

會得到﹕
A a 8
A b 11
B g 8
  回复  引用    

#2楼 [楼主] 2006-10-11 12:21 小寒      
不好意思,我没有考虑到num会有重复的问题
因为我的数据结构中num是自增的
所以不会出现你的问题
我在考虑考虑,呵呵
  回复  引用  查看    





标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2007-03-29 15:49 编辑过
Google站内搜索

China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》

相关文章:

相关链接: