Forum

Veritabanına son g&...
 
Bildirimler
Hepsini Temizle

Veritabanına son gün kaydedilen stokları nasıl bulurum ?

19 Yazılar
3 Üyeler
0 Reactions
1,361 Görüntüleme
(@bluess_devils)
Gönderiler: 133
Estimable Member
Konu başlatıcı
 

Merhaba arkadaşlar;


 


Nette araştırdım ama bulamadım.Stok kart tablosunda dtekayittarihi adında bir sütun var.Bu sütunda,son gün (bugün) kaydolmuş stokları bulmak için,nasıl bir sorgu yazmam gerekiyor ?


 


Yardımlarınızı bekliyorum...

 
Gönderildi : 23/09/2010 03:25

(@ahmetaltuntas)
Gönderiler: 731
Prominent Member
 

Merhaba aşagıdaki komutu daha önce kullandım çalışıyor.Kolay Gelsin 

select * from TABLO where day(İSTEDİGİN SÜTÜN) = day(getdate()) and month(İSTEDİGİN SÜTÜN) = month(getdate()) and year(İSTEDİGİN SÜTÜN) = year(getdate())

 
Gönderildi : 23/09/2010 11:07

(@bluess_devils)
Gönderiler: 133
Estimable Member
Konu başlatıcı
 

Ahmet bey;


Çok teşekkür ederim.Süper oldu.

 
Gönderildi : 23/09/2010 15:56

(@MuratSimitci)
Gönderiler: 38
Eminent Member
 

Selamlar,


 Aşağıdaki sorgularda işinizi görebilir;


 select * from Tablo_Adi


where convert(varchar(10),dtekayittarihi,104) = (select convert(varchar(10),getdate(),104))


 veya


 


 


select * from Tablo_Adi


where convert(varchar(10),dtekayittarihi,104) = '23.09.2010' 


"Bu Sorgu ile istediğiniz her hangi bir tarihe ait rapor alabilirsiniz."


" *  yerine Tablodan çekmek istediğiniz, alan adlarını yazabilirsiniz. " 


" Aldığınız sorguda Tarih alanının saat değerlerini görmek istemiyorsanız, alan seçerken  Convert etmelisiniz. convert(varchar(10),dtekayittarihi,104) gibi " 


 


 


 

 
Gönderildi : 23/09/2010 17:44

(@MuratSimitci)
Gönderiler: 38
Eminent Member
 

Selamlar,


Sizin sorunuz üzerine biraz pratik yapıyorum, Sizin vesilenizle paylaşmak istedim.


Son Kayıt tarihine ait giris yapılan stokları bulmak için; (En son hangş gün kayıt girilmişse o güne ait kayıtları getirir.)


select * from Tabo_Adi


where convert(varchar(10),dtekayittarihi,104) = (


select top 1 convert(varchar(10),dtekayittarihi,104)


from Tablo_Adi


order by dtekayittarihi desc)


 


 

 
Gönderildi : 23/09/2010 19:56

(@ahmetaltuntas)
Gönderiler: 731
Prominent Member
 

Rica Ederim.


Kolay Gelsin.

 
Gönderildi : 23/09/2010 20:59

(@bluess_devils)
Gönderiler: 133
Estimable Member
Konu başlatıcı
 

Murat Bey;


İlginize teşekkür ederim.Sorgularınız sorunsuz çalıştı.


Son 3 gün yada,son bir hafta dese idim sorgu nasıl olurdu ?

 
Gönderildi : 24/09/2010 02:10

(@ahmetaltuntas)
Gönderiler: 731
Prominent Member
 

select * from TABLO where ALANADI between tarih1='Başlangıç tarihi 'and Tarih2='Bitiş tarih'


 


select * from tbl_haraket where CikisTarihi between '2010-08-20' and '2010-08-05'


Kolay Gelsin.

 
Gönderildi : 24/09/2010 11:12

(@bluess_devils)
Gönderiler: 133
Estimable Member
Konu başlatıcı
 

Ahmet Bey;


İki tarih arası bir sorgu çekmek istediğimde sizin sorgunuzu kullanabilirim.


Peki bugün günlerden cuma.Ben son üç günü içeren bir sorguyu nasıl yaparım ? Çarşamba,perşembe ve cuma günleri olsun.


Yarın ise sorguda perşembe,cuma,cumartesi günleri çıksın.

 
Gönderildi : 24/09/2010 11:39

(@MuratSimitci)
Gönderiler: 38
Eminent Member
 

Selamlar,


 Rica ederim. Sizin vesilenizle bende pratik yapıyorum.


Eskilerin deyimiyle; " Yaptığın başkasına ise öğrendiğin kendine " 


 


Son 7 gün  için sorgu; 


select * from TabloAdi


where convert(varchar(10),dtekayittarihi,104) between (select convert(varchar(10),(getdate()-7),104)) and (select convert(varchar(10),getdate(),104))


 


( *  -7 ' yi  istediğiniz gibi değiştirip, kaç gün geriye gideceğinizi belirleyebilirsiniz. ) 


 


 


 

 
Gönderildi : 24/09/2010 11:49

(@bluess_devils)
Gönderiler: 133
Estimable Member
Konu başlatıcı
 

Murat Bey;


İlgilendiğiniz için teşekür ederim.


Yalnız sorgu çalıştı ama son yedi gün değil daha fazlasını verdi.

 
Gönderildi : 24/09/2010 13:16

(@MuratSimitci)
Gönderiler: 38
Eminent Member
 

Selamlar,


 


select convert(varchar(10),(getdate()-7),104) sorgusu hangi tarihi döndürüyor ?


 


bende 


select convert(varchar(10),(getdate()-7),104) as tarih


 tarih
17.09.2010


olarak sonuc veriyor.


 


Dolayısıyla 17.09.2010 (dahil)  24.09.2010 (dahil ) tarihleri arası kayıtları döndürmeli, 


 

 
Gönderildi : 24/09/2010 14:36

(@bluess_devils)
Gönderiler: 133
Estimable Member
Konu başlatıcı
 

Murat Bey;


select * from tbstok


where convert(varchar(10),dtekayittarihi,104) between (select convert(varchar(10),(getdate()-7),104)) and (select convert(varchar(10),(getdate()-7),104))


 Sonuç olarak 17.09.2010 döndürüyor.17.09.2010 ile 24.09.2010 arası dönmedi 🙁

 
Gönderildi : 24/09/2010 15:22

(@MuratSimitci)
Gönderiler: 38
Eminent Member
 


Murat Bey;


select * from tbstok


where convert(varchar(10),dtekayittarihi,104) between (select convert(varchar(10),(getdate()-7),104)) and (select convert(varchar(10),(getdate()-7),104))


 Sonuç olarak 17.09.2010 döndürüyor.17.09.2010 ile 24.09.2010 arası dönmedi 🙁



 


Selamalar,


Başlangıç ve bitiş tarih sorgusu aynı kalmış,


 


and den sonraki sorguda -7 yi kaldırısanız sorun olmayacaktır.


 


aşağıdaki sorguyu denermisini ?


 



select * from tbstok


where convert(varchar(10),dtekayittarihi,104) between (select convert(varchar(10),(getdate()-7),104)) and (select convert(varchar(10),getdate(),104))


 


 


 


 


 

 
Gönderildi : 24/09/2010 15:40

(@bluess_devils)
Gönderiler: 133
Estimable Member
Konu başlatıcı
 

Murat Bey;


Sorguyu denedim.7.aydan itibaren açılmış bütün stokları gösteriyor.


 

 
Gönderildi : 24/09/2010 16:56

(@MuratSimitci)
Gönderiler: 38
Eminent Member
 

Selamlar,


Ben çalıştırdığımda sorun olmuyor;


kodları kontrol edebilir misiniz?


Sorgu sonuçları aşağıdaki gibidir.  


 


(select convert(varchar(10),(getdate()-7),104))


union all


 


(select convert(varchar(10),getdate(),104))


union all


 


(select convert(varchar(10),getdate()-104,104))


 Srgu sonucu


(No column name)
17.09.2010
24.09.2010
12.06.2010

 
Gönderildi : 24/09/2010 18:31

(@bluess_devils)
Gönderiler: 133
Estimable Member
Konu başlatıcı
 

Murat Bey;


 


Sorguların sonucu sizin sonuçlarınız ile aynı.Ayrıca şunu farkettim.


select * from tbstok


where convert(varchar(10),dtekayittarihi,104) between (select convert(varchar(10),(getdate()-7),104)) and (select convert(varchar(10),getdate(),104))


bu sorgu çalıştığında son 7 ay çıkıyor.Biz 7 gün arıyoruz o yüzden sonuç tutmuyordu.

 
Gönderildi : 25/09/2010 20:51

(@MuratSimitci)
Gönderiler: 38
Eminent Member
 

Selamlar,


 Aynı sonucu almamız gerekiyor, neden olmadığını anlayamadım,


 İş yerinizde sorun olmazsa Team Viewer ile bağlanabilirim. (Muhtemelen güvenlik vb sebep ile izin alamayabilirsiniz.)


 Birde aşağıdaki sorguyu deneyebilir misiniz ?


select from  tbstok


where (select Datediff(dd,dtekayittarihi,getdate())) <=7


 


 


 

 
Gönderildi : 25/09/2010 22:39

(@bluess_devils)
Gönderiler: 133
Estimable Member
Konu başlatıcı
 

Murat Bey;


 


Sorgu sonucu istediğimiz gibi çıktı.Elinize sağlık...

 
Gönderildi : 26/09/2010 15:50

Paylaş: