Sql Max. Değer Sorgulama

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
202
Excel Vers. ve Dili
Excel 2021
236139

Yukarıdaki Access tablosunda STOK_KODU alanında son 4 hanesi en büyük olan Stok_kodunu bulmak istiyorum. Nasıl bir sorgu yazmalıyım?
 

Ekli dosyalar

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,268
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
C#:
    strSQL = "Select Max(Right([STOK_KODU],4)) From [HAMMADDE]"
.
 

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
202
Excel Vers. ve Dili
Excel 2021
Kod:
Sorgu = "select Max(Right([STOK_KODU],4)) as ttx,[MALZEME_TUR] from [HAMMADDE] where [MALZEME_TUR] ='PANEL MALZEMELERİ' group by [MALZEME_TUR]"
RS.Open Sorgu, con, 1, 3

If RS.RecordCount > 0 Then
ttx = ttx + 1
Else
ttx = "1001"
End If
Hocam bende ilk böyle yazdım ama sonuç alamadım.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,268
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
2. mesajda verdiğim sorgu size direkt olarak "1645" sonucunu verir.

Sizin istediğiniz bu mu, yoksa stok kodunun tamamı olan "A.H.1001.1645" sonucu mu?


.
 
Son düzenleme:

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
202
Excel Vers. ve Dili
Excel 2021
Kod:
Set RS = CreateObject("adodb.recordset")
Sorgu = "select Max(Right([STOK_KODU],4)) as fx,[MALZEME_TUR] from [HAMMADDE] where [MALZEME_TUR] ='" & MALZEME.MALZEME_GRUBU.Value & "' group by [MALZEME_TUR]"
RS.Open Sorgu, con, 1, 3

If RS.RecordCount > 0 Then
ttx = RS("fx").Value + 1
Else
ttx = "1001"
End If
tamamdır hocam hata benden kaynaklı :) teşekkür ederim
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,268
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Eğer istediğiz, 4. mesajda dediğim gibi tablodaki STOK_KODU alanında son 4 dijitten oluşan sayının maksimum olduğu STOK_KODU verisini bulmaksa;

C#:
    strSQL = "Select [STOK_KODU] From [HAMMADDE] Where Right([STOK_KODU],4) In (Select Max(Right([STOK_KODU],4)) From [HAMMADDE]) "


Ya da örneğin, STOK_KODU alanında son 4 dijitten oluşan sayının maksimum olduğu STOK_KODU'na ait BIRIM_FIYAT verisini bulmaksa;

C#:
    strSQL = "Select [BIRIM_FIYAT] From [HAMMADDE] Where Right([STOK_KODU],4) In (Select Max(Right([STOK_KODU],4)) From [HAMMADDE]) "
.
 

ragnorak

Altın Üye
Katılım
4 Haziran 2016
Mesajlar
202
Excel Vers. ve Dili
Excel 2021
Yok Hocam ilk yazdığınız kod tamam. Malzeme Grubunu, Ürün Grubu, Ürün Sınıfı ve Sıraya göre kod oluşturuyorum. Stok Kartı ekleyince değil de kartı değiştirince sıra numarası karışıyordu. Sayenizde oda hal oldu. Teşekkür ederim.
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,268
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Eyvallah ..... diğer sorgular da elinizin altında bulunsun, onlar da güzel oldu ve işe yarayabilirler.

.
 
Üst