sorgu içinde max kullanımı

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
pentiumkivanc
Üye
Mesajlar: 350
Kayıt: 19 Şub 2004 10:24
İletişim:

sorgu içinde max kullanımı

Mesaj gönderen pentiumkivanc »

merhabalar;
aşağıdaki gibi bir access tablom var

Kod: Tümünü seç

urun_id  urun_adi  kategori,tarih
1  ABCD  anakart  24.11.2004
2  DEFG  anakart  25.11.2004
3  YYTG  işlemci  10.11.2004
4  TT66  ram      15.11.2004

Tabloda bu bilgiler var burada "tarih" alanı kartın açıldığı tarihi gösteriyor ve benim bu tablodan yaptığım sorgunun kartı en son açılmış farklı kategorideki ürünleri getirmesi gerekiyor yani en son stok kartı açılmış olan anakart, en son stok kartı açılmış işlemci v.s bunu aşağıdaki gibi yapmaya çalışınca hata alıyorum

Kod: Tümünü seç

SELECT urun_id,urun_adi,max(tarih) from stoktable group by kategori
Bu sorguyu nasıl yaptırmam gerekli?

Veritabanı Access, sorgulamayı yapan ASP
Kullanıcı avatarı
fahrettin
Admin
Mesajlar: 2619
Kayıt: 11 Haz 2003 10:38
Konum: İstanbul
İletişim:

Mesaj gönderen fahrettin »

group by da kullandiginiz alanlar disinda bir alani select icinde belirtip isteyemezsiniz... Yani urun_id,urun_adi group by da olmadigi surece select icinde olamaz....

Sorunuzun cevabina gelince bu cümle isinizi gorecektir.... Access de subquery destegi var mi bilmiyorum ama oldugunu tahmin ediyorum... Dolayisiyla calisacaktir....

Kod: Tümünü seç

SELECT urun_id,urun_adi,tarih
from stoktable ST
where tarih=(Select Max(tarih) from stoktable ST1 where ST.kategori=ST1.kategori)
Kolay gelsin.....
* http://www.fahrettin.org Manzara Fotoğraflarım... :)
* http://delphiturkiye.gunduz.info Seminerler... ;)
* http://www.hakmar.com.tr Kalite bir haktır... 8)
Kullanıcı avatarı
pentiumkivanc
Üye
Mesajlar: 350
Kayıt: 19 Şub 2004 10:24
İletişim:

Mesaj gönderen pentiumkivanc »

Teşekkürler;
dediğiniz gibi yaptım sorun çözüldü. Allah Razı Olsun
Cevapla