Arama butonu
Bu konudaki kullanıcılar: 1 misafir
0
Cevap
285
Tıklama
0
Öne Çıkarma
MsSql tablodaki kayıtların herhangi 2 tanesini tabloya kaydı ekleyen tüm kullanıcılar için almak
M
7 yıl
Er
Konu Sahibi

Merhaba resimdeki gibi 2 tablom var.
< Resime gitmek için tıklayın >

Kullanici tablosundaki kullanıcıların kayıtlar tablosundki kayıtlrı üzerinde şu şekilde bi işlem yapmak istiyorum :

kayitlar tablosundaki son kayıt ve ayın ilk kaydını almak istiyorum .
Daha öncede her insert update ve delete işleminden SONRA trigger çalıştırıp başka bir tabloya bu verileri kaydettiriyordum. Ama bazen öngörmediğim şeyler meydana gelyo . kayıtlar da başka tabloya aktarıldığı için düZeltmek çok zor oluyor .

Aklıma 2 alternatif daha geldi .

1.YOL

bir sanal tablo oluşturup

CREATE TABLE #ozet
DECLARE @Sayac INT = 1
WHILE @Sayac < 20
BEGIN
--SON KAYIT
select top 1 ayitlar where SayacId=@sayacid and Kayittarihi< GETDATE() order by TarihSaat asc
-- AYIN İLK KAYDI
select top 1 ...........
INSERT INTO #ozet ......

SET @Sayac += 1;

END

Kodları örnek için yazdım . sadece yöntemin performansını ve mssql server kaynaklarını nasıl etkiler onu öğrenmek istiyorum .

2. yol olarak ta son ayın bütün kayıtlarını çekip c# tarafında foreach ile mi ayıklayayım .

yada bu ihtiyaç için başka nasıl bir yöntem izleyebilirim .

Teşekürler





< Bu mesaj bu kişi tarafından değiştirildi mbuhur -- 10 Mayıs 2018; 23:30:29 >

DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.