
declare @classcd int
declare classcd cursor for
select distinct 班级 from stu
CREATE TABLE #temp
(
 [学号] [int] NULL ,
 [姓名] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
 [年龄] [int] NULL ,
 [班级] [int] NULL 
) ON [PRIMARY]
OPEN classcd
FETCH NEXT FROM classcd INTO @classcd
WHILE @@FETCH_STATUS=0
BEGIN
 INSERT INTO #temp
 (学号, 姓名, 年龄,班级)
 SELECT TOP 1 学号, 姓名, 年龄,班级
 FROM stu
 WHERE 班级=@classcd
 ORDER BY 年龄
 FETCH NEXT FROM classcd INTO @classcd
END
CLOSE classcd
DEALLOCATE classcd
SELECT *
FROM #temp
用游标写了一个凑合吧。把这个做个存储过程来用好了,就是ASP能不能调用SQL的SP我不太清楚(其实我自己也想调,最好还是带形参的那种)

-数据表
id name  nl class
1 WSN        25 COM
2 LAIJIE     27 ART
3 L3C        24 ART
4 BB         28 COM
5 RGB        23 COM
6 OTHER      29 ART
用这条就可以实现
select * from class where nl in (
select min(nl) from  CLASS group by class)
你拿这组数据试试
-数据表
id name     nl    class
1 WSN       25   COM
2 LAIJIE     27   ART
3 L3C        26   ART
4 BB          25   COM
5 RGB       26   COM
6 OTHER   29  ART
写SQL语句不是为了写而写的,结果的正确性是很重要的,执行成功,结果出来,并不代表完工了。
想先确认一个字段定义的问题。
在这个表下面不同类下的产品,产品编号是否可以重复
比如是
.........leiid  ....cp...........cpid..............
           1         aa            1
           1         ab            2
           2         bb            3
                     .........
还是
.........leiid  ....cp...........cpid..............
           1         aa            1
           1         ab            2
           2         bb            1
           2         bc            2
                      ..............
[此贴子已经被作者于2006-3-25 11:51:27编辑过]
