0
votes

Comment compter le point d'une rangée dans mysql

Sélectionnez UserID à partir de l'utilisateur; xxx

Je veux le résultat de ce type: xxx

Le champ est sur combien Les points sont dans une rangée .

Quel est le SQL pour cela? Merci


1 commentaires

4 Réponses :


1
votes

Faites la longueur de l'ID utilisateur, moins la longueur de remplacement des points d'UseID sans rien xxx

en général pour cette technique, nous devrions examiner avec soin d'utiliser la longueur ou la longueur de charme, le premier compte la Nombre d'octets qui composent la chaîne, le second le nombre de caractères. Dans ce cas, cela n'aura pas d'importance, mais cela pourrait à l'avenir si vous utilisez cette technique sur les chaînes Unicode où les caractères sont représentés par plus d'un octet


0 commentaires

1
votes

Un moyen simple consiste à utiliser des remplacements pour compter le nombre de points: xxx

Demo


0 commentaires

1
votes

Vous pouvez vérifier la longueur avant et après remplacer la DOT

  select  userid, length(userid) - length(replace(userid,'.',''))
  from my_table  


0 commentaires

1
votes

le "." est un caractère qui peut être compté comme tout autre caractère comme "A", "7", "". Vous devez donc indiquer à MySQL Query quel nom de caractère que vous souhaitez compter à partir d'une chaîne.

Voir le code ci-dessous: EM> P>

SELECT 
      (CHAR_LENGTH(userid) - CHAR_LENGTH(REPLACE(userid, '.', ''))) AS count
FROM table_name;


0 commentaires