Sobes.tech
Junior — Middle

Jak lze implementovat podmíněné filtrování dat při provádění SQL dotazů?

sobes.tech AI

Odpověď od AI

Pro implementaci podmíněného filtrování dat v SQL dotazech lze použít dynamické sestavování dotazů s ohledem na podmínky, které mohou být nastaveny nebo vynechány během běhu.

V C# se to často dělá pomocí:

  • Řetězcové konkatenace s kontrolou podmínek (nedoporučuje se kvůli riziku SQL injection).
  • Použití parametrizovaných dotazů s podmíněnými parametry.
  • Použití ORM, například Entity Framework, kde lze sestavovat dotazy pomocí LINQ a přidávat podmínky podle potřeby.

Příklad s 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();

Tento přístup umožňuje flexibilně přidávat filtry bez duplikace kódu a rizika chyb.