Sql Server sorgularında satırlara satır numarası (satır indexi / Row Number / Row Index ) ekleme

by Eren 10. February 2010 22:07

Sual : Muallim efendi bir sualim var.

Diyelim bir tablodan select ile bir tutam veri çektik ve bu bir tutam veriyi başka bir tabloya atıcaz. Ama bu bir tutam veriye bir sıra numarası yani ecnebi tabiriyle Row Index eklememiz gerekiyor. Yani istediğim sonuç tam olrark şu;

Sıra No Esame
1 Hayriye
2 Sabriye
3 Şaziye
4 Kadriye

Ben isimleri tablodan çekebiliyorum ama buna sqlde sıra numarası koyamıyorum birtürlü.

 

El-Cevab : Değerli çekirge. Bu konudaki çabalarını taktirle karşılıyorum. Lakin bu işlemi başarabilmenin iki yolu var. Bu yollardan biri çok uzun ve meşakkatli. Diğer yol ise kısa pratik ve performanslı.

Ben tabiki sana ikinci yolu göstereceğim.

Veri çekmek istediğin tablonun isminin Talebeler olduğunu varsayıyorum. Vede tabloda bölümü fıkıh olan talebeleri çekelim ve bir kolondada satırlara index numarası koymak isteyelim.

Bu durumda bizim işimizi görecek iki anahtar sözcük var birincisi ROW_NUMBER()  ikinciside OVER()

SELECT ROW_NUMBER() OVER(ORDER BY Esame) AS SıraNo,
Esame,
FROM Talebeler Where Bolum = 'Fıkıh'

bu sorgu tam olarak istediğin sonucu vericek sana. Sorgudanda görebileceğin gibi evvela over ile sıralanmış isimler üzerinden sıra numarası üretilip sıraNo kolonuna ekleniyor.

Umarım anlaşılmıştır.

 

Kaynak : www.eggheadcafe.com/forum

 

Comments

4/14/2010 6:43:16 AM #

İhsan

Smile çok eğlenceli anlatmışsınız. teşekkürler...

İhsan Turkey | Reply

Add comment


(Will show your Gravatar icon)

  Country flag

biuquote
  • Comment
  • Preview
Loading



Hakkımda Kısaca

Eren Çetin

Bilgisayar Mühendisi

İstanbul / Turkiye

Eren Çetin - 2010
Eren Çetin, Bilgisayar Mühendisi , Yazılım Geliştirme Uzmanı