Maison > base de données > tutoriel mysql > Comment puis-je simuler IS DISTINCT FROM et IS NOT DISTINCT FROM dans SQL Server 2008R2 ?

Comment puis-je simuler IS DISTINCT FROM et IS NOT DISTINCT FROM dans SQL Server 2008R2 ?

Mary-Kate Olsen
Libérer: 2025-01-11 07:16:43
original
263 Les gens l'ont consulté

How Can I Simulate IS DISTINCT FROM and IS NOT DISTINCT FROM in SQL Server 2008R2?

La réécriture EST DISTINCTE DE et N'EST PAS DISTINCTE DES Prédicats dans SQL Server 2008R2

Dans SQL Server 2008R2, la norme EST DISTINCTE DE et EST Les opérateurs NOT DISTINCT FROM ne sont pas pris en charge. Cela pose un problème aux utilisateurs qui ont besoin de comparer des valeurs et d'obtenir des résultats définitifs de Vrai ou Faux au lieu de l'Inconnu par défaut.

Alternatives de réécriture

Pour émuler le SI DISTINCT FROM et IS NOT DISTINCT FROM, les expressions suivantes peuvent être utilisées :

  • La réécriture IS DISTINCT DE :
((a <> b OR a IS NULL OR b IS NULL) AND NOT (a IS NULL AND b IS NULL))
Copier après la connexion
  • La réécriture N'EST PAS DISTINCTE DE :
(NOT (a <> b OR a IS NULL OR b IS NULL) OR (a IS NULL AND b IS NULL))
Copier après la connexion

Ces expressions déterminent effectivement si les valeurs ne sont pas égales ou si l'une ou l'autre des valeurs est nulle. Si tel est le cas, le résultat renvoyé est True ; sinon, c'est Faux.

Éviter les pièges courants

Il est important de noter que l'expression suivante ne pas réécrit correctement IS DISTINCT FROM :

FALSE OR NULL
Copier après la connexion

Dans SQL Server, FALSE OR NULL est évalué à Inconnu, ce qui n'est pas le résultat souhaité. Par conséquent, il est crucial d'utiliser les expressions fournies ci-dessus pour une réécriture précise.

Conclusion

En utilisant ces expressions réécrites, les utilisateurs de SQL Server 2008R2 peuvent obtenir les mêmes fonctionnalités que EST DISTINCT DE et N'EST PAS DISTINCT DE, garantissant que les comparaisons renvoient toujours des résultats définitifs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal