Détermination de la nature entière des valeurs MySQL
Dans MySQL, déterminer si une valeur est un entier est crucial pour la validation et la manipulation des données. Cette question explore les méthodes permettant de vérifier le statut entier d'une valeur, similaire à la fonction is_int() en PHP.
Solution 1 : correspondance d'expressions régulières
Si vous en avez besoin pour vérifier une valeur de chaîne, une approche pratique consiste à utiliser l'opérateur REGEXP. Cet opérateur vous permet de faire correspondre la chaîne à un modèle d'expression régulière. Pour vérifier les entiers, utilisez l'expression régulière suivante :
^-?[0-9]+$
Ce modèle correspond à des chaînes représentant des entiers, à la fois positifs et négatifs. En utilisant la requête :
select field from table where field REGEXP '^-?[0-9]+$';
vous pouvez récupérer uniquement les valeurs entières du champ.
Solution 2 : Comparaison numérique
Pour les valeurs numériques champs, une solution plus simple consiste à capitaliser sur le fait que les valeurs entières sont exprimées sous forme de nombres entiers sans partie fractionnaire. Vous pouvez comparer le plafond du champ au champ lui-même :
ceil(field) = field
Si la comparaison est vraie, le champ contient un entier. Cette méthode évite la surcharge de calcul des expressions régulières.
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!