
SQL 算法
文章平均质量分 50
sdhdy
对SQL感兴趣,也乐意在SQL上互相交流。但不会刻意去做技术高手,也不会去做钻石级专家。别忘了,SQL只是人生中之一小部分。。。。。。。。
展开
-
一道复杂的面试题目
最近面试了几个人,给他们出了一道SQL语句面试题,但是反应效果不太理想。题目如下: 表scores有四个字段,学生stu、班级class、学院institute、分数score。 要求返回:班级考试人数大于10、班级最低分在50分以上、计算机学院、班级平均分从高到低前10名。 可以用任意数据库写SQL 返回字段为班级,平均分。--不准嵌套语句。select top 10 c原创 2009-04-27 20:16:00 · 880 阅读 · 0 评论 -
简单的问题,查询数据库中第 N 条记录
我有一个数据库, ProjID (int 主键), Project (varchar), Notify (int) 现在我要根据 Notify 的值来查询某一条记录,比如 Notify = 10 ,我就是要查询 数据库中第10条记录,这个用 select 语句怎么来查询 ? DECLARE @CurrID int SELECT @CurrID = notify FROM Proj原创 2009-10-10 11:29:00 · 735 阅读 · 1 评论 -
找出与某id相近的四条记录
declare @tb table(id int,cName char(10))insert into @tbselect 3,aae UNION ALLselect 5,aBe UNION ALLselect 6,a89 UNION ALLselect 7,b89 UNION ALLselect 10,a22 UNION ALLselect 12,B87 UNION AL原创 2009-08-19 10:04:00 · 656 阅读 · 1 评论 -
列变区间问题
有一个表 num 001 002 003 004 007 008 009 想让他们变成区间形式 a b 001 004 007 009 如何才能办到,我需要的是一条sql语句--------------------------------------构建数据declare @tb table(num varchar(10)) insert into @tb select 001原创 2009-06-02 21:51:00 · 720 阅读 · 0 评论 -
多行合并2列并去掉重复列。
create table tb(col1 varchar(10),col2 varchar(10),col3 varchar(10),col4 varchar(10))goinsert tb select 11111 , 222 , A , 1 insert tb select 1111 , 333 , A , 1 insert原创 2009-06-02 11:05:00 · 1424 阅读 · 2 评论 -
逐行计算、逐行递延、逐行更新。
有表如下 工号 姓名 数量 基数 开始号 终止号 1 张三 5 2 李四 6 3 王五 7 比如基数是100,希望得到结果: 工号 姓名 数量 基数 开始号 终止号 1 张三 5 100 101 105 2 李四 6 105 106 111 3 王五 7 111 112 118 ---原创 2009-05-26 12:31:00 · 1067 阅读 · 1 评论 -
选出彩票中奖用户
某彩票网站的一个数据表T_DATA有7个数字字段(F1,F2~F7),用于存储彩民购买的彩票上的7个号码(顺序按数字从小到大分别放在F1~F7中): T_DATA FNAME F1 F2 F3 F4 F5 F6 F7 张三 1 3 5 12 21 22 30 李四 4 6 12 14 24 28 29 … … … … … … … … 摇奖摇出了一组号码也是7个数字: 3,12,14,17,19原创 2009-05-22 16:55:00 · 657 阅读 · 0 评论 -
两个表的复杂合并
表1 表2 编号 属性1 编号 属性2 1 11 1 111 1 12 1 112原创 2009-07-26 16:32:00 · 695 阅读 · 1 评论 -
存储过程中如何根据参数是否为空执行不同的select??
存储过程中如何根据参数是否为空执行不同的select??假设表T1,其中有A1,A2,D1,D2等多个字段,A1,A2为varchar型,D1,D2为日期型。 传来四个参数,@A1,@A2,@D1,@D2,如果为空,则不必理会;如果不为空,则加到条件子句中。 如 @A1,@D1不空为,那么。 要执行select * from t1 where a1=@A1 and d1>=@D1 如果@A2,原创 2009-07-21 12:08:00 · 4803 阅读 · 3 评论 -
期初余额、期末余额复杂计算。
原创 2009-05-06 16:54:00 · 2261 阅读 · 0 评论 -
两表分组汇总及排序
表1 id name 1 tom 2 mike 3 john 表2 id xm lb time 1 tom 跳舞 2009-01-09 2 tom 唱歌 2009-02-21 3 tom原创 2009-05-07 14:17:00 · 646 阅读 · 0 评论 -
按时间段统计,不连续的日期要补上
只有一个表table1,字段为: col1 varchar(10), col2 date, col3 int 数据库存的数据为: 日期 名称 总数 2009-04-02 C 1 2009-04-05 B 10 2009-03-31 D 11 2009-04-07 D 5 2009-03-原创 2009-05-06 13:56:00 · 3026 阅读 · 2 评论 -
求最大公约数
declare @t table (id int,value int)insert @t select 1,40insert @t select 2,50insert @t select 3,60declare @i intselect @i=min(value) from @twhile exists (select 1 from @t where value % @i set原创 2009-10-21 12:31:00 · 652 阅读 · 1 评论