Skip to main content

AccessTr.neT


Sorguda Sıralamanın Farklı Kriterlere Göre Yapılması...

Sorguda Sıralamanın Farklı Kriterlere Göre Yapılması...

#2
aşağıdaki kodu deneyebilirsiniz ama bence çalışmanız ilişkili tablo mantığına ters
parametre tablosunda zaten tablo türünün ID ve Adı var, tbl_Orderski RaporTuru alanı gereksiz yere parametre tablosundaki alan, RaporTuru alanıyla ilişkilendirilmiş
oysa tbl_Orders tablosundaki rapor türü alanı uzun tamsayı yapılıp tbl_Param tablosundaki ID alanıyla ilişkilendirilseydi hem sıralama için param tablosuna gerek kalmayacaktı hem de veri israfı olmayacaktı.
şöyle düşünün Kdv iade değeri 8 karakter, oysa aynı alanın ID değeri tek haneli bir sayı yada diyelim ki 100lerce tür var en fazla 999 yani 3 hane,
aşağıda 3 farklı tür için hafızada kaplanan alan gösterilmiştir

MS Access’te
1 - "Kısa Metin (Short Text)" alanı her karakter için 1 bayt kullanır.
8 karakter olduğu için: 8 bayt

2 - "Uzun Tam Sayı (Long Integer)" veri türü sabit olarak 4 bayt kaplar.
Sayının kaç basamaklı olduğu önemli değildir, her zaman 4 bayt kullanır.

3 - "Tam Sayı (Integer)" veri türü sabit olarak 2 bayt kaplar.
Sayının 3 haneli olması fark etmez, her zaman 2 bayt yer kaplar.

ama asıl önemli olan metin verileri girilirken yazım hatalarının olabilme ihtimali de vardır
SELECT tbl_Orders.RaporTuru, Count(tbl_Orders.id) AS Sayid
FROM tbl_Orders INNER JOIN tbl_Param ON tbl_Orders.RaporTuru = tbl_Param.RaporTuru
GROUP BY tbl_Orders.RaporTuru
ORDER BY First(tbl_Param.id);
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
RE: Sorguda Sıralamanın Farklı Kriterlere Göre Yapılması... - Yazar: berduş - 08/02/2025, 20:33