0

ストアド プロシージャを介して次の行で QuestionId を選択するにはどうすればよいですか?

(クライアント側: 質問(QuestionId:3)が画面に表示されます。次へボタンをクリックすると、次の質問(QuestionId:7)が表示されます)。

ご了承ください; QuestionId は、実行のたびに RowId に従って増分的かつ継続的に変更する必要があります (1-3-7-8 など)。また、質問は削除される可能性があるため、順序を守ることが重要です。

+-------+------------+--------------+
| RowId | QuestionId | QuestionText |
+-------+------------+--------------+
| 1     | 1          | aaaa         |
| 2     | 3          | bbbb         |
| 3     | 7          | cccc         |
| 4     | 8          | dddd         |
| 5     | 13         | eeee         |
| 6     | 17         | ffff         |
| 7     | 24         | gggg         |
| 8     | 30         | hhhh         |
+-------+------------+--------------+
4

1 に答える 1

1

これを試して:

CREATE PROCEDURE dbo.GetNextQuestion

@QuestionID int

AS 

SET NOCOUNT ON

SELECT TOP 1 RowId, QuestionId, QuestionText
    FROM Questions
    WHERE QuestionID > @QuestionID
    ORDER BY QuestionID

GO

[次へ] ボタンをクリックすると、現在の質問 ID がストアド プロシージャに渡されます。

于 2012-07-05T18:24:56.110 に答える