Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Sadece Son Kayıtları Listeleme
#1
Merhaba Üstadlarım,

Hazır bir MsSql veri tabanından son 20 kaydı listeliyorum ve kendi database tabloma aktarıyorum. Buraya kadar sorun yok.

SELECT        TOP (20) SOYAD, AD, DOGUMTARIHI FROM KAYITLAR ORDER BY ID DESC

Sorum şu:
Son çektiğim 20 kayıttan sonra, yeni kaydedilen son kaydı çekmem gerek ama yeni kayıt yoksa yine son 20 kayıt geliyor. Bunu nasıl engelleyebilirim. Yani yeni kayıt yok ise sorgu boş gelsin, dolu ise kay kayıt yapılmış ise o kadar kayıt gelsin. Mesela 5 kayıt yapılmış o gelsin. Kayıt Tarihi Alanı Yok.

Bunu nasıl yapabilirim acaba?
Cevapla
#2
Son zamanlarda zekası tartışma konusu olan bir arkadaş şöyle cevap verdi.
-----------------------------------------------------------------------------------------

Bu sorunu çözmek için, son sorguda çekilen son kaydın ID değerini alarak, bu ID'den sonraki yeni kayıtları çekebilirsiniz. Böylece, yeni kayıt olmadığı durumlarda boş bir sonuç döndürebilirsiniz.

Örneğin, son sorguda çekilen son kaydın ID'si 100 ise, aşağıdaki sorgu ile sonraki yeni kayıtları çekebilirsiniz:

SELECT SOYAD, AD, DOGUMTARIHI
FROM KAYITLAR
WHERE ID > 100
ORDER BY ID DESC

Bu sorgu, son çekilen 20 kaydın sonrasında yeni kayıt olup olmadığını kontrol eder. Eğer ID değeri 100'den büyük yeni kayıt varsa, bu kayıtlar son 20 kayıt ile birlikte döndürülür. Eğer yeni kayıt yoksa, sorgu boş bir sonuç döndürür.

Tabii ki, bu sorguyu kullanabilmek için son sorguda çekilen son kaydın ID değerini bir şekilde saklamalısınız. Bu işlemi programlama dili veya araçlarınızın fonksiyonlarıyla yapabilirsiniz.
Cevapla
#3
Tabloda integer bir alan daha olacak, O alanın null değeri 0 olsun.
Kayıtlar çekildiğinde integer alanın değeri 1 olarak işaretlenerek, sonraki sorguda 0 değerlerini listelediğin için, çekilen alanlar gelemeyeceğinden yeni kayıtlar görünür hep.
__________________________
From Now I will only Reading.
Cevapla
#4
@COMMANDX metoduna benzer bir metod önericem.

Tablolara ek raporkontrol benzeri isimli ek bir tablo ekler de her sorguda; 

* sorguyu yapan kullanıcıya özel id ile 
* son kayıt id'si eklerseniz,  

A kullanıcısının görüntülediği ile B kullanıcısının görüntülediği vb son kayıtları ayrıştırmak imkanınız olur.
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla
#5
Çok Teşekkürler.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  harf olan kayıtları görmezden gelme ercanskose 9 1.282 30-01-2024, Saat: 11:26
Son Yorum: elixir84
  EnumWindows apisi sadece çalışan uygulamalar kofmaster 1 1.909 26-08-2023, Saat: 10:40
Son Yorum: veteran
  InputBox a sadece rakam girme. noname101 3 899 06-06-2023, Saat: 10:21
Son Yorum: COMMANDX
  İziBiz eFatura Listeleme MuhammedYasir 11 3.805 30-03-2023, Saat: 11:19
Son Yorum: enigma
  Küsürlü alan listeleme Altıner 4 1.431 05-03-2023, Saat: 22:42
Son Yorum: delphiX14



Konuyu Okuyanlar: 1 Ziyaretçi