2016-12-06 8 views
0

を新しいIDを与える私はBatchNbrを持つテーブルが、serialNbr何とか何とか.........更新テーブル内の選択されていないレコードとそれらに

BatchNbr| serialNbr 
----- - | ------ 
P-27 | 501600 
p-27  501601 
"   501602 
""  501603  
"" 
""   "" 

は、今私は、トップNレコードを選択したいですテーブルから、同じbatchNbrを保持し、非選択のためbatchnbrはP-27-1'.Iが

select top(@top) BatchNbr,SerialNbr from Table. 

を使用して上位nレコードを選択することができましたが、私は更新する方法を取得しておりません」にアップデートする必要があります記録残りのレコードのBatcNbr

助けを歓迎します

+1

あなたのrdbmsは何ですか? [** How-to-Ask **](http://stackoverflow.com/help/how-to-ask) \t \t [** START **](http ://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/)質問品質を向上させ、より良い回答を得る方法を学ぼう。 –

+0

テーブルを更新し、BatchNbr = p-27に設定する必要がありますか?すべての行にありますか? – Sami

+0

テーブルに20レコードがあり、ユーザーがトップ10レコードを選択した場合、11-20のbatchnbrを 'p-27-1'として更新する必要があります。 –

答えて

0

あなたはこのような何かをすることができます。

UPDATE table 
SET BatchNbr = 'P-27-1' 
WHERE SerialNbr NOT IN (
    SELECT TOP 10 SerialNbr FROM Customer 
) 

RDBMSによっては、クエリを変更する必要があります。しかし、これはMSSQLで動作します。

+0

シリアル番号は一意ではありません.. –

+0

次にRDBMSは何ですか? –

関連する問題