Sorguda Sıra numarası oluşturmak

1 2
25/11/2013, 22:38

fulem

ya kişiler soruyu okumuyor yada iş olsun diye cevap veriyor. Kısacası Raporlarda -1 yaptığı işi sorguda yapabilirmiyiz. Bir daha belirteyim for next döngüleri haric

SELECT (select count([SBS PUANI]) from TEOGSinavHesaplandi where [SBS PUANI] >=SiraNumarasiVer.[SBS PUANI] ) AS [SBS SIRA], SiraNumarasiVer.[DERSHANE NO], SiraNumarasiVer.[ADI VE SOYADI] AS Deyim1, SiraNumarasiVer.[GRUP NO] AS Deyim2, SiraNumarasiVer.[SBS PUANI], SiraNumarasiVer.[TOP DOGRU], SiraNumarasiVer.[TOP YANLIS], SiraNumarasiVer.[TOP NET], SiraNumarasiVer.TURD, SiraNumarasiVer.TURY, SiraNumarasiVer.TURN, SiraNumarasiVer.MATD, SiraNumarasiVer.MATY, SiraNumarasiVer.MATN, SiraNumarasiVer.FEND, SiraNumarasiVer.FENY, SiraNumarasiVer.FENN, SiraNumarasiVer.SOSD, SiraNumarasiVer.SOSY, SiraNumarasiVer.SOSN, SiraNumarasiVer.INGD, SiraNumarasiVer.INGY, SiraNumarasiVer.INGN, SiraNumarasiVer.DIND, SiraNumarasiVer.DINY, SiraNumarasiVer.DINN, SiraNumarasiVer.[SINAV KODU], SiraNumarasiVer.KATILIM AS Deyim3, SiraNumarasiVer.[GRUP MEVCUDU] AS Deyim4, (select count([SBS PUANI]) from TEOGSinavHesaplandi where [SBS PUANI] >=SiraNumarasiVer.[SBS PUANI] AND [GRUP NO]=SiraNumarasiVer.[GRUP NO] ) AS [GRUP SIRA], SiraNumarasiVer.TURYANIT, SiraNumarasiVer.TURCEVAP, SiraNumarasiVer.MATYANIT, SiraNumarasiVer.MATCEVAP, SiraNumarasiVer.FENYANIT, SiraNumarasiVer.FENCEVAP, SiraNumarasiVer.SOSYANIT, SiraNumarasiVer.SOSCEVAP, SiraNumarasiVer.INGYANIT, SiraNumarasiVer.INGCEVAP, SiraNumarasiVer.DINYANIT, SiraNumarasiVer.DINCEVAP, SiraNumarasiVer.TURKITAP, SiraNumarasiVer.MATKITAP, SiraNumarasiVer.FENKITAP, SiraNumarasiVer.SOSKITAP, SiraNumarasiVer.INGKITAP, SiraNumarasiVer.DINKITAP, SiraNumarasiVer.TURS, SiraNumarasiVer.MATS, SiraNumarasiVer.DINS, SiraNumarasiVer.FENS, SiraNumarasiVer.SOSS, SiraNumarasiVer.INGS
FROM TEOGSinavHesaplandi AS SiraNumarasiVer
ORDER BY SiraNumarasiVer.[SBS PUANI] DESC;
Kırmızı ile yazdığım alan sorguda sıralama yapar. Sorun şu ki aynı puanı alan öğrencilere aynı sıra numarası veriliyor, yani sıralama ardışık gitmiyor.
25/11/2013, 22:47

yorum70

Sn Fulem, 2,5 yıldır bu sitedeyim, hiçbir sayın üyenin laf olsun diye bir konuya yanıt yazdığını görmedim.Bakınız hitaplara, hep sayın'la başlar...kişi veya şahısla , emri-vaki cümlelerle değil.
26/11/2013, 03:00

fatih karagöl

Selamlar Sayın Fulem
Öncelikle son mesajınızdaki sitemi daha dostça dile getirmenizi dilerdim.
Neticede burası bir forum ve doğru sonuç bir çok cevapla birlikte gelir.
Kaldı ki sorunuz pekte kolay bir soru değil.
Beklediğiniz gibi ideal bir teknik olmadığını tahmin ediyorum ama istediğinizi verecektir. Öngörülememiş bir hata üretirse de düzeltiriz.
Örneğinizdeki sorgu1'in Sql metni. Accesteki editöre göre ayarladım. Sql serverden sorgulayacaksınız mantığı aynı kalır ama komutlar değişir biraz.

SELECT (Select Count([tablo1_1.YAŞI] & [tablo1_1.ID]) from tablo1 as tablo1_1 where left("0000000000",10 - len([tablo1_1.YAŞI])) & [tablo1_1.YAŞI] & [tablo1_1.ID] <= left("0000000000",10 - len([tablo1.YAŞI])) & [tablo1.YAŞI] & [tablo1.ID] ) AS [sira No], Tablo1.ID, Tablo1.ADI, Tablo1.YAŞI, Tablo1.MAAŞI, Tablo1.İŞİ
FROM Tablo1 LEFT JOIN Tablo1 AS Tablo1_1 ON Tablo1.ID = Tablo1_1.ID
GROUP BY Tablo1.ID, Tablo1.ADI, Tablo1.YAŞI, Tablo1.MAAŞI, Tablo1.İŞİ
ORDER BY Tablo1.YAŞI, [TABLO1.YAŞI] & [TABLO1.ID];
1 2