Junior — Middle
SQL sorğuları icra edilərkən şərti məlumat filtrləməsini necə həyata keçirmək olar?
sobes.tech Süni İntellekt
AI-dan cavab
SQL sorğularında şərtli məlumat filtrləməsini həyata keçirmək üçün, icra zamanı təyin oluna bilən və ya atlanabilən şərtlərə əsasən dinamik sorğu qurmaq mümkündür.
C# dilində bu adətən aşağıdakı yollarla edilir:
- Şərtlərin yoxlanması ilə sətirlərin birləşdirilməsi (SQL inyeksiyası riski səbəbindən tövsiyə edilmir).
- Şərti parametrlərlə parametrli sorğuların istifadəsi.
- ORM istifadə edərək, məsələn, Entity Framework, burada LINQ istifadə edərək sorğular qurmaq və lazım olduqda şərtləri əlavə etmək.
LINQ nümunəsi:
var query = context.Users.AsQueryable();
if (!string.IsNullOrEmpty(nameFilter)) {
query = query.Where(u => u.Name.Contains(nameFilter));
}
if (ageFilter.HasValue) {
query = query.Where(u => u.Age == ageFilter.Value);
}
var result = query.ToList();
Bu yanaşma kodu təkrarlamadan və səhv riskini azaltmadan filtrləri elastik şəkildə əlavə etməyə imkan verir.