Probleme recordset.

theunknown0o Messages postés 14 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 1 juillet 2010 - 30 juin 2010 à 14:01
theunknown0o Messages postés 14 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 1 juillet 2010 - 1 juil. 2010 à 11:09
Bonjour,
j'ai fait un recorset sur distinct S/P/A (S/P/A = colonnes) d'une table SQL (table1)
je veux que pour chaque distinct SPA dans mon recordset je compare mon mask initial (11111) aux masks qui correspondent a ce même SPA dans (table1)
est store le resultat distinct SPA + resultat de la comparaison des mask dans une table SQL.
la ou je coince c'est au niveau de la comparaison des mask... :(
quelqu'un pourrait me dire comment faire?
Merci pour votre aide

4 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
30 juin 2010 à 15:41
Salut
Pas clair.
Que représentent S, P et A ? Quel type de champ, de contenu ?
Le masque dont tu parles comporte 5 valeurs binaires et S, P et A, s'ils sont des valeurs binaires, ne sont que 3.

Qu'as-tu écris comme requète ?
(ça permettra de connaitre le nom des champs)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
theunknown0o Messages postés 14 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 1 juillet 2010
30 juin 2010 à 16:09
Salut:
Que représentent S, P et A ? Quel type de champ, de contenu ?
S=Scen, P=Per, A=Acct/ de type nvarchar 50
act Mai P26660

Le mask comporte 35 caractères genre 00000001111111101111111111110111111

la table1 comporte plusieurs colonnes mais les champs qui m'interessent sont S,P,A + Mask (sachant que je peut avoir plusieurs mask pour le même SPA dans cette table1)


Mon recordset va aller chercher les distinct SPA de table1 et les mettre dans une table2 qui contient 4 colonnes (select distinct SPA from table1): SPA + Nouveau_Mask ==> Nouveau_mask = l'agrégation des maks qui correspondent au meme SPA dans table1
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
30 juin 2010 à 19:05
Donc, en plus de S, P et A, tu as aussi un champ nommé Mask ?
Et qui fait toujours 35 caractères ?

Dans une requète SQL, si tu utilises DISTINCT, celui-ci n'agira QUE sur les champs listés dans le Select.
Donc, si tu as plusieurs Mask (combien ? 2 ou plus encore) pour le même trio S-P-A, tu ne pourras plus rattaché le Mask aux données.

"select distinct SPA from table1" est incorrect puisque ce sont des noms de champs, on doit les séparer.
select distinct S, P, A from table1

"le resultat de la comparaison des mask"
Quel genre de comparaison ? And, Or, XOr ?
Après, tu parles d'agrégation : ce n'est pas la même chose.

STP, donne un exemple précis de quelques lignes de ta Table1 et ce que tu veux stocker dans Table2 parce que je n'y comprends pas grand chose.
0
theunknown0o Messages postés 14 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 1 juillet 2010
1 juil. 2010 à 11:09
Salut,
pour la requête select distinct c'était juste pour que tu aies un aperçu ...
j'ai aucun problème dans cette partie.
Pour la comparaison c'est un AND.
Table_1
S P A Mask1
X B Q 110010
X B Q 111101
X B Q 111110
Y C Y 100101
Z D Z 110110
Z D Z 100011

Table_2 (résultat)
S P A Nouveau_Mask
X B Q 110000 (=110010+111101+111110)
Y C Y 100101
Z D Z 100010
0
Rejoignez-nous