Posté(e) le 20 mars 200817 a Salut à tous, pour mon taf, je dois extraire des suites d'enregistrement (comprendre compter le nombre d'enregistrement où la valeur d'un champ -X- s'incrémente de 1). Exemple simple: X | valeur 200 | 3156 201 | 5214 202 | 6156 203 | 6156 301 | 5615 302 | 6515 400 | 1561 Cet exemple comprend 3 suites : 200 avec 4 enregs, 301 avec 2 enregs, 400 avec 1 enregs. Je taf sous Postgre 8.1/8.2. Merci d'avance à tous.
Posté(e) le 20 mars 200817 a En quoi ? php ? perl ? C ? autre ? postgre pur ? Je ne trouve pas le post très clair désolé.
Posté(e) le 21 mars 200817 a en gros, il faut que tu découpe la totalité des enregistrements en autant de blocs qu'il y a de sauts, c'est ça ? solution simple et pas optimisée : tu parcours tous les enregistrement en les ajoutant à la liste courante tant que ça s'incrémente de 1. Dès que ça ne s'incrémente pas de 1, tu créé une nouvelle liste qui devient la liste courante.
Posté(e) le 22 mars 200817 a Auteur en gros, il faut que tu découpe la totalité des enregistrements en autant de blocs qu'il y a de sauts, c'est ça ?solution simple et pas optimisée : tu parcours tous les enregistrement en les ajoutant à la liste courante tant que ça s'incrémente de 1. Dès que ça ne s'incrémente pas de 1, tu créé une nouvelle liste qui devient la liste courante. Oui c'est le traitement à faire, mais comment le faire en postgres pur? J'ai fait très peu de plsql (oracle) et pas du tout de pgplsql. La meilleure solution serait-elle d'écrire une fonction pgplsql? Question subsidiaire : les enregistrements provenant d'un GPS, il se peut que un enregistrement ne soit pas comptabilisé, et donc on cherche à avoir les suites à n enregisrement près (ex : 1,2,3,5,6 ne ferait qu'une seule suite). Merci & cordialement, FL
Posté(e) le 8 mai 200817 a SELECT toto FROM tata WHERE toto LIKE '1__'; ou '2__', .... suivant ce que tu veux, non ?
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.