Junior — Middle
Cum se poate implementa filtrarea condițională a datelor la executarea interogărilor SQL?
sobes.tech AI
Răspuns de la AI
Pentru a implementa filtrarea condițională a datelor în interogările SQL, puteți utiliza generarea dinamică a interogărilor ținând cont de condițiile care pot fi setate sau omise în timpul execuției.
În C#, acest lucru se face adesea prin:
- Concatenarea de șiruri cu verificarea condițiilor (nu recomandat din cauza riscului de injecție SQL).
- Utilizarea interogărilor parametrizate cu parametri condiționali.
- Utilizarea ORM, de exemplu, Entity Framework, unde puteți construi interogări folosind LINQ, adăugând condiții după necesitate.
Exemplu cu LINQ:
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();
Această abordare permite adăugarea flexibilă a filtrelor fără a duplica codul și fără a risca erori.