Tarih sıralamasında YEDEKID oluşturmak

Katılım
19 Şubat 2006
Mesajlar
73
Excel Vers. ve Dili
exel
Merhaba Arkadaşlar


Bir tablom var bu tablodaki kayıtlar şu şekilde


ID_____TARIH________TUTAR
1 _____15.01.2008____15,00
4 _____16.01.2008____10,00
3 _____18.01.2008____ 5,00
2 _____20.01.2008____10,00

yukarıda yazılan kayıtlar görüldüğü üzere tarih sırasına göre sıralanmış durumda fakat ID sıralaması yaptığım zaman tarih sırası bozuluyor ve ben bir sorguda hem TARIH hemde ID alanlarını beraber kullanmak zorunda olduğum için iş karışıyor, yapmak istediğim şey ise bu aynı sorgunun içinde tarih sırasına göre yeni bir ID oluşturmak yani aşağıdaki tabloyu elde etmek istiyorum. ve her sıralama sonucunda verilerin yerleri değişse bile YEDEKID alanı hep 1'den başlayıp sonuna kadar gitmiş olacak

ID_____TARIH________TUTAR______YEDEKID
1 _____15.01.2008____15,00_______1
4 _____16.01.2008____10,00_______2
3 _____18.01.2008____ 5,00_______3
2 _____20.01.2008____10,00_______4


Yardımcı olacak arkadaşlar şimdiden teşekkür ederim.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın smmustafa,

İlişikteki uygulamada iki fonksiyonlu bir modül ve bir sorgu var. Sorgu modüldeki fonksiyonları kullanarak, sorguya sıra numarası vermektedir.


İyi çalışmalar.
 

Ekli dosyalar

Katılım
18 Nisan 2007
Mesajlar
2,053
Excel Vers. ve Dili
Access 2019
Kod:
[I]select tutar, ID, TARIH, (select count(ID) from TABLO where TARIH<=trz.TARIH) AS YEDEKID
from TABLO as trz[/I]
TABLO yazan kısımlara tablonuzun adını yazın sadece..
 
Katılım
8 Eylül 2006
Mesajlar
155
Excel Vers. ve Dili
Excel 2002
Sn. Taruz, aynı tarihli kayıtlar olduğunda, sizin sorgu sonucu yanlış çıkıyor.
Aslında sadece sıralama olarak düşünürsek sorun yaratmaz ama
ID olarak baktığınızda tekrarlamaması lazım.


Tablo Kayıtları
ID Adı Tarih
1 aaa 01/01/2009
2 bbb 20/12/2008
3 ccc 01/01/2008
4 ddd 01/01/2008
5 eee 20/12/2008


Sorgu Sonucu
Tarih ID Adı YEDEKID
01/01/2008 3 ccc 2
01/01/2008 4 ddd 2
20/12/2008 2 bbb 4
20/12/2008 5 eee 4
01/01/2009 1 aaa 5


Bu şekilde ID yi de kontrol ettiğimizde sorun kalmıyor.
Kod:
SELECT trz.Tarih, trz.ID, trz.Adı, (select count(ID) from TblDeneme where (Tarih<trz.Tarih) or (Tarih=trz.Tarih and ID<=trz.ID )) AS YEDEKID
FROM TblDeneme AS trz
ORDER BY trz.Tarih, trz.ID;
Tarih ID Adı YEDEKID
01/01/2008 3 ccc 1
01/01/2008 4 ddd 2
20/12/2008 2 bbb 3
20/12/2008 5 eee 4
01/01/2009 1 aaa 5
 

Ekli dosyalar

Son düzenleme:
Katılım
19 Şubat 2006
Mesajlar
73
Excel Vers. ve Dili
exel
Arkadaşlar ilginize çok teşekkür ediyorum

kendi uygulamamda sıra numarasını elde ettim fakat başka sorguda kullanamıyorum onun için aklıma şöyle birşey geldi tabi bu mümkün olursa işim dahada pratik olacak


Güncelleme sorgusu

Tablo1
----------
ID
TARIH
TUTAR
SIRANO

Yukarıdaki tabloya çok fazla kayıt girildiğini düşünün karışık ıd ve karışık tarih olarak
yapılacak sorgu bu tabloyu Tarih sırasına göre sıralayacak ve SIRANO alanını 1 başlayarak sonuna kadar numaralandıracak bir güncelleme sorgusudur.

bu sorguyu nasıl yapabilirim acaba yardımcı olabilirmisiniz.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın smmustafa,

Sizin tablo yaratma dediğiniz zaten sorgunun kendisi. Sorgunun kullanılma amacı bu. Tablodaki verileri istediğimiz şartlarda ve görünüşte göstermek. İki hatta üç yöntem önerilmiş siz hala değişik bir şey arıyorsunuz. Bir sorguyu nasıl başka bir sorguda kullanamıyorsunuz?
 
Katılım
19 Şubat 2006
Mesajlar
73
Excel Vers. ve Dili
exel
Sayın modalı
verilen bütün yöntemleri kendi uygulamamam üzerinde deniyorum fakat olmuyor en basit anlamda sizin yapmış olduğunuz sorguyu kullanıyorum oda olmuyor

kendi verilerim yaklaşık 11000 adet falan bu verilerin tamamını sizin yaptığınız örneği kopyaladım gayet güzel çalışıyor bir sıkıntı yok ama gel gelelim aynısını kendi uygulamamda çalıştırımıyorum

01/01/08 'den 14/01/2008'e kadar sıralama doğru arada 15/01/2008'i yüksek bir sıra numarası vermiş 16/01/2008'den yine tekrar doğru numarayla devam ediyor.

2 saattin verilen örnek üzerinde denemeler yapıyorum bir türlü uygulamama adapte edemedim.

Şimdi tabloma SiraNo Diye bir alan ekledim bu alana ellen sıra numarası verdim ve bu şekilde sorgumu yaptığımda doğru sonucu aldım. bu alanı istediğim zaman güncelleyerek sıraya sokabileceğim bir sorgu gerekmekte
Tekrar teşekkür ederim.
 
Üst