怎样在查询出的的纪录前加上序号?(SQL Server7)(100分)

  • 主题发起人 主题发起人 Sun
  • 开始时间 开始时间
你还是用个存储过程吧。
 
将你查询参数列出。
 
我要的结果就像大富翁的问题列表前带的序号一样
 
参考一下(Interbase SQL)
Create Procedure QueryAnswer(
NAME VARCHAR(20)
)
RETURNS
(
NAME VARCHAR(20),
POINTS INTEGER;
NUM INTEGER;
)
AS
BEGIN
FOR SELECT NAME, POINTS FROM CUSTOMER INTO :NAME, :POINTS DO
BEGIN
SELECT COUNT(*)+ 1 FROM CUSTOMER WHERE (POINTS > ( SELECT POINTS FROM CUSTOMER WHERE NAME='SUN' )) INTO :NUM;
SUSPEND;
END
END;
 
>>我要的结果就像大富翁的问题列表前带的序号一样
那是专门定义的一个字段
 
那个序号是自增字段。
 
参考一下(Interbase SQL)
Create Procedure QueryAnswer(
NAME VARCHAR(20)
)
RETURNS
(
NAME VARCHAR(20),
POINTS INTEGER;
NUM INTEGER;
)
AS
DECLARE VARIABLE ID INTEGER;
BEGIN
ID=0;
FOR SELECT NAME, POINTS FROM CUSTOMER INTO :NAME, :POINTS DO
BEGIN
ID=ID+1;
NUM=ID;//自增
SUSPEND;
END
END;
 
NUM=:ID;//自增
 
大富翁的是显示的时候显示的循环变量吧?:")
 
CJ: 对,对! 不好意思.太粗心了. :-P
问题的ID才是自增字段.
 
to cakk,peterwang:
不可能是一个自增字段,如果是自增字段那么问题检索结果的序号硬是不连续的!
 
我不是说了吗? 问题列表前面的数字是CJ所说的"循环变量",问题的ID是"自增字段".
 
这也用问??

如果当前待答问题一共100个,我循环显示的问题标题的时候,用一个变量不断加1,
然后显示在问题的标题前面不就可以了???
 
开玩笑!!!!!
我所在SQL语句中!!!!
 
可是本论坛的问题列表前面的数字就是一个简单的循环变量,和sql无关.
 
多人接受答案了。
 

Similar threads

后退
顶部