私はクエリを持っており、クエリがその答えを返す行番号を見つける必要があります。 私はカウンターフィールドを持っていません。どうすればいいのですか?クエリの後に行を見つける方法は?
ありがとうございます。
私はクエリを持っており、クエリがその答えを返す行番号を見つける必要があります。 私はカウンターフィールドを持っていません。どうすればいいのですか?クエリの後に行を見つける方法は?
ありがとうございます。
SELECT
ROW_NUMBER() OVER (<your_id_field_here> ORDER BY <field_here>) as RowNum,
<the_rest_of_your_fields_here>
FROM
<my_table>
あなたは主キーを持っている場合は、SQL Server 2005およびアップこの方法で使用することができます:
SELECT
ROW_NUMBER() OVER (ORDER BY PrimaryKeyField) as RowNumber,
Field1,
Field2
FROM
YourSourceTable
あなたは主キーを持っていない場合、何をしなければならないことがあるが(それは非常に大きい場合や、一時テーブル)のようにメソッドを使用してmermoryテーブルにテーブルを複製:
DECLARE @NewTable table (
RowNumber BIGINT IDENTITY(1,1) PRIMARY KEY,
Field1 varchar(50),
Field2 varchar(50),
)
INSERT INTO @NewTable
(Field1, Field2)
SELECT
Field1,
Field2
FROM
YourSourceTable
SELECT
RowNumber,
Field1,
Field2
FROM
@NewTable
この程度の素敵な部分は、あなたがあなたの元場合は、同一の行を検出することができますということですテーブルにはプライマリキーがありません。
また、この時点では、所有しているすべてのテーブルにプライマリキーを追加することをお勧めします。
T1 に挿入(N1のINT、N2のINT)
をテーブルT1を作成200,300
を選択 T1に挿入200,300
を選択し挿入300,400
を選択 T1に挿入t1 選択400,400 ..... ......
選択ROW_NUMBER()RowNumber関数([N1]による順)上で、* T1
から、私は、クエリを持っている、と私はクエリが 答えを返す 行番号を見つける必要があります。私はカウンターを持っていません フィールド。私はそれをどうやって?
私が正しくあなたの質問を理解していれば、あなたは行を返すクエリのいくつかの並べ替え、または少数の行(答え、答えを)持っていて、「答え」と行番号の仲間を持つようにしたい
あなたはあなたがフォローしているためにする必要がありますので、どのような任意のカウンタフィールドを持っていない言ったように:
質問にさらに詳しい情報を提供していただければ、本当に役に立ちます。 質問を正しく理解していることを確認した場合は、コード例を追加します
これをご覧ください http://databases.aspfaq.com/database/how-do-i-return-row-numbers-with- my-query.html –
実行しようとしているクエリの例を投稿できますか? – Jeremy