Bonjoir,
J`ai une question que je ne peux pas solutionner.
(la base des données est MS Access et j`essaye de programmer avec SQL en Access)
Ma table actuelle est construit comme suit: (c'est seulement un exemple)
1 2 3 4 5 6 7 8
| ID REP QUEST CAR VAL
1 1 1 3 Pomme
2 1 1 7 Banane
3 1 2 1 Oui
4 2 1 1 Prune
5 2 1 4 Crassane
6 2 1 7 Banane
7 2 2 2 Non |
Et je voudrais changer en forme suivante:
(la variable VAL n`est pas importante en ce moment et pour ce question, mais je voudrais indiquer les valeurs pour improver votre compréhension)
1 2 3
| ID--REP----Q1C1---Q1C2---Q1C3---Q1C4......Q1C7-----Q2C1---Q2C2
1 1 0 0 1(Po) 0 1(Ba) 1(Oui)0
2 1 1(Pr) 0 0 1(Cr) 1(Ba) 0 1(Non) |
Le problème:
En phase un, SQL doit scanner la premier table:
SELECT * FROM fruits_caduques;
En phase deux, SQL doit écrire dans la table nouvelle:
(et c'est la bravade grande)
Ensemble la solution peut faire comme ci (approx):
FOR i=1 TO XXX (la valeur de la ID dernièrement qui je peux trouver manuellement)
1 2 3 4
| SELECT * FROM fruits_caduques WHERE ID=i;
q=QUEST;
c=CAR;
INSERT INTO fruits_nouvelles (Q[q]C[c]) VALUES (1); |
C`est seulement la structure générale et j`ai deux questions:
Est-que c`est possible? (Q[q]C[c])
Et est-que c`est possible de programmer en SQL, parce que je n`ai jamais écouté de programmer avec des affilages (FOR TO) et des variables (q=QUEST) en SQL?!
Et si ce n`est pas possible - ou est-que on faut programmer la solution?
(Remarque: c`est une base MS Access ? VBA ?)
Merci beaucoup pour chacun renseignement,
Stefan
Partager