Vraag : om de gevalverklaring te optimaliseren

kon u onder geval statement

case
toen (is u.bi_user_passport_puid geen ongeldige
EN geen u.bi_user_passport_puid is u.bi_owner_passport_puid null
EN = u.bi_owner_passport_puid) toen/> 1
else
0
eind

thanks vooraf

Antwoord : om de gevalverklaring te optimaliseren

Wanneer het plaatsen ANSI_NULLS aan OP (SQL het gebrek van de Server) wordt geplaatst, is de ongeldig-Controle overtollig omdat ONGELDIGE <> ONGELDIG en [om het even welke waarde] <> ONGELDIG.

Aldus, slechts „u.bi_user_passport_puid = zou u.bi_owner_passport_puid“ voldoende zijn. Wanneer één of allebei ONGELDIG is, zal het resultaat altijd negatief zijn.

U kunt het plaatsen met het bevel controleren:
DBCC USEROPTIONS
Als de vastgestelde optie „ansi_nulls“ in de lijst is, is het.
1:
2:
3:
4:
COMPUTER-AIDED SOFTWARE ENGINEERING
   WANNEER u.bi_user_passport_puid = u.bi_owner_passport_puid) TOEN 1
   ANDERS 0
EIND ALS IsFamilyHead
Andere oplossingen  
 
programming4us programming4us