Est-ce que quelqu'un sait comment obtenir le nombre maximal de séquences de chaque colonne dans une table. Par exemple, si avoir le tableau A qui présente les données suivantesRequête de nombre contigu MySQL maximum
id | n1 | n2 | n3 | n4 | n5 | n6 | n7 | n8 | n9 | n10| Max | Sets
----------------------------------------------------------------
1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 10 | 1 |
2 | 1 | 3 | 4 | 5 | 6 | 8 | 14 | 15 | 16 | 25 | 4 | 2 |
3 | 4 | 8 | 9 | 15 | 18 | 19 | 55 | 64 | 65 | 98 | 2 | 3 |
4 | 41 | 55 | 66 | 67 | 68 | 69 | 74 | 82 | 131| 132| 4 | 2 |
Comme vous pouvez le voir dans le tableau ci-dessus, je dois obtenir le nombre contigu maximum de numéros d'une rangée, dans l'exemple ci-dessus, j'ai ajouté la colonne ' Max '&' Ensembles 'pour afficher le résultat requis.
Dans la première rangée il y a 10 nombres contigus (1 à 10) et seulement 1 ensemble/groupe de nombres contingents, dans la seconde il y a seulement 4 (3,4,5,6) et 2 ensembles de nombres contingents (3 à 6 et 14 à 16).
J'essayais de comprendre cela depuis un certain temps mais je n'arrive pas à comprendre la requête requise (c'est-à-dire, joindre ou une instruction select et if). Je peux le faire dans d'autres langues mais préférerais que MySQL complète ce calcul.
FOR i <= count(column)
IF count > sequence
THEN sequence = count
ELSE count ++
NEXT i
SQL Fiddle Contient ma table et les données et je suis en train de faire la requête requise
Bonne question .. dites-moi si elle serait résolue d'une manière plus facile – Sami