Clauses WHERE insensibles à la casse dans SQL Server
Requête de données sans tenir compte de la casse
Dans SQL Server, les comparaisons de chaînes ne sont généralement pas sensibles à la casse par défaut. Toutefois, si vous rencontrez un scénario dans lequel le respect de la casse devient un problème, vous pouvez spécifier un classement dans votre clause WHERE pour gérer explicitement ce comportement.
Par exemple, considérez la requête suivante :
SELECT * FROM myTable WHERE myField = 'sOmeVal'
Si la configuration de votre base de données (collation) n'est pas définie pour être insensible à la casse, cette requête ne renverra que les résultats où la valeur de « myField » correspond exactement à « sOmeVal ». Pour ignorer la casse dans vos comparaisons, vous pouvez utiliser l'opérateur COLLATE comme suit :
SELECT * FROM myTable WHERE myField COLLATE SQL_Latin1_General_CP1_CI_AS = 'sOmeVal'
Le classement spécifié (SQL_Latin1_General_CP1_CI_AS dans cet exemple) détermine les règles de comparaison des chaînes, y compris le respect de la casse. En utilisant un classement insensible à la casse comme CI (Case-Insensitive), vous vous assurez que la clause WHERE ignore les différences de casse dans la comparaison.
Notez que le choix du classement dépend de la configuration spécifique de la base de données. Vous devez vous référer à la documentation Microsoft pour une liste complète des classements disponibles.
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!