sql >> Database teknologi >  >> RDS >> Sqlserver

COALESCE i Hvor-klausulen?

@Blorgbeard-svar (ved at bruge top 1 og sorter efter) er nok den bedste måde, men bare for at være anderledes kan du også bruge en underforespørgsel og ikke eksisterer:

SELECT name FROM names 
WHERE (colA = @colA) OR (colA = 'ALL' AND NOT EXISTS(
                                                SELECT name FROM names 
                                                WHERE colA = @colA)) 

Jeg gætter på, at "fordelen" ved dette er, at den bruger mere standard sql.



  1. Er der PHP mysql_real_escape_string til postgresql?

  2. ude af stand til at oprette forbindelse til AWS RDS postgres-instans fra pgadmin4

  3. Oracle - Udløser for at oprette en historikrække ved opdatering

  4. forespørgsel inde i forespørgsel, hvor summen af ​​tabel2.beløb (hvis stat=1) er større end summen af ​​tabel 1-udgift