Oups, j'ai oublié de préciser que je suis sous Access 97
"SCAN" a écrit dans le message de news:ca96rd$caf$
bonjour,
J'ai 3 bases : NOTES RDV et ACTION
Chacune contient l'ID d'un client Elles ont des champs différents, quoique chacune à un champ DATE
Est il possible de faire une requête qui afficherait dans l'ordre chronologique tous les évenements (NOTE, RDV et ACTION) d'un même client ?
Ou via une autre solution ?
Merci
Sandrine.
Zeus
Salut,
il suffit de faire une requete union entre tes 3 tables tu selectionnes les champs communs aux trois 3 tables que tu veux faire apparaitre dans chaque partie de ta requete
"Select * from [notes]
UNION ALL
SELECT * FROM [RDV]
UNION ALL
SELECT * FROM [ACTION]"
Salut,
il suffit de faire une requete union entre tes 3 tables
tu selectionnes les champs communs aux trois 3 tables que tu veux faire
apparaitre dans chaque partie de ta requete
il suffit de faire une requete union entre tes 3 tables tu selectionnes les champs communs aux trois 3 tables que tu veux faire apparaitre dans chaque partie de ta requete
"Select * from [notes]
UNION ALL
SELECT * FROM [RDV]
UNION ALL
SELECT * FROM [ACTION]"
SCAN
Oui mais si il n'y a pas de champs communs ?
Peut on "demander" la création d'une liste contenant :
un champ date (se trouvant dans chaque base mais pas sous le même nom de champ) un champ commentaire (résultant de la concaténation de tout les autres champs de l'enregistrement de la base)
Avec selection sur le N° client commun à chaque base et trié par date ??
Sandrine. "Zeus" a écrit dans le message de news:
Salut,
il suffit de faire une requete union entre tes 3 tables tu selectionnes les champs communs aux trois 3 tables que tu veux faire apparaitre dans chaque partie de ta requete
"Select * from [notes]
UNION ALL
SELECT * FROM [RDV]
UNION ALL
SELECT * FROM [ACTION]"
Oui mais si il n'y a pas de champs communs ?
Peut on "demander" la création d'une liste contenant :
un champ date (se trouvant dans chaque base mais pas sous le même nom de
champ)
un champ commentaire (résultant de la concaténation de tout les autres
champs de l'enregistrement de la base)
Avec selection sur le N° client commun à chaque base
et trié par date ??
Sandrine.
"Zeus" <davidboulonnais@aol.com> a écrit dans le message de
news:e0fQKfsTEHA.1368@TK2MSFTNGP11.phx.gbl...
Salut,
il suffit de faire une requete union entre tes 3 tables
tu selectionnes les champs communs aux trois 3 tables que tu veux faire
apparaitre dans chaque partie de ta requete
Peut on "demander" la création d'une liste contenant :
un champ date (se trouvant dans chaque base mais pas sous le même nom de champ) un champ commentaire (résultant de la concaténation de tout les autres champs de l'enregistrement de la base)
Avec selection sur le N° client commun à chaque base et trié par date ??
Sandrine. "Zeus" a écrit dans le message de news:
Salut,
il suffit de faire une requete union entre tes 3 tables tu selectionnes les champs communs aux trois 3 tables que tu veux faire apparaitre dans chaque partie de ta requete
"Select * from [notes]
UNION ALL
SELECT * FROM [RDV]
UNION ALL
SELECT * FROM [ACTION]"
SCAN
Cela peut être le fruit d'une requête ou d'un état mais je ne sais comment faire et crois bien que cela est impossible, non ?
"SCAN" a écrit dans le message de news:ca9blm$fq4$
Oui mais si il n'y a pas de champs communs ?
Peut on "demander" la création d'une liste contenant :
un champ date (se trouvant dans chaque base mais pas sous le même nom de champ) un champ commentaire (résultant de la concaténation de tout les autres champs de l'enregistrement de la base)
Avec selection sur le N° client commun à chaque base et trié par date ??
Sandrine. "Zeus" a écrit dans le message de news:
Salut,
il suffit de faire une requete union entre tes 3 tables tu selectionnes les champs communs aux trois 3 tables que tu veux faire apparaitre dans chaque partie de ta requete
"Select * from [notes]
UNION ALL
SELECT * FROM [RDV]
UNION ALL
SELECT * FROM [ACTION]"
Cela peut être le fruit d'une requête ou d'un état mais je ne sais comment
faire et crois bien que cela est impossible, non ?
"SCAN" <contact@archives-nord.com> a écrit dans le message de
news:ca9blm$fq4$1@s1.read.news.oleane.net...
Oui mais si il n'y a pas de champs communs ?
Peut on "demander" la création d'une liste contenant :
un champ date (se trouvant dans chaque base mais pas sous le même nom de
champ)
un champ commentaire (résultant de la concaténation de tout les autres
champs de l'enregistrement de la base)
Avec selection sur le N° client commun à chaque base
et trié par date ??
Sandrine.
"Zeus" <davidboulonnais@aol.com> a écrit dans le message de
news:e0fQKfsTEHA.1368@TK2MSFTNGP11.phx.gbl...
Salut,
il suffit de faire une requete union entre tes 3 tables
tu selectionnes les champs communs aux trois 3 tables que tu veux faire
apparaitre dans chaque partie de ta requete
Cela peut être le fruit d'une requête ou d'un état mais je ne sais comment faire et crois bien que cela est impossible, non ?
"SCAN" a écrit dans le message de news:ca9blm$fq4$
Oui mais si il n'y a pas de champs communs ?
Peut on "demander" la création d'une liste contenant :
un champ date (se trouvant dans chaque base mais pas sous le même nom de champ) un champ commentaire (résultant de la concaténation de tout les autres champs de l'enregistrement de la base)
Avec selection sur le N° client commun à chaque base et trié par date ??
Sandrine. "Zeus" a écrit dans le message de news:
Salut,
il suffit de faire une requete union entre tes 3 tables tu selectionnes les champs communs aux trois 3 tables que tu veux faire apparaitre dans chaque partie de ta requete
"Select * from [notes]
UNION ALL
SELECT * FROM [RDV]
UNION ALL
SELECT * FROM [ACTION]"
SCAN
Je crois avoir trouver une solution mais je n'arrive pas à la programmer :
J'ai crée une table temporaire "HISTORIQUE" (ou un tableau via DIM) composé de 3 champs : DATE & DESCRIPTION & ETAT (DATE et ETAT sont communs à mes bases NOTE RDV et ACTION). Celle ci ne sera ouverte ensuite qu'en lecture.
Je parcours la table NOTE, je recherche les enregistrements concernant un même client. Pour chaque enregistrement correspondant je remplis la table HISTORIQUE avec : DATE = date de la prise de note DESCRIPTION = concaténation de tout les champs de la base NOTE (hormis les champs DATE et ETAT) ETAT = etat de la note
Je fais de même pour la base RDV puis ACTION.
Je trie ma base HISTORIQUE sur la DATE et l'affiche.
A chaque changement de client, je supprime la base (ou tableau).
Qu'en pensez vous ?
Sandrine.
"SCAN" a écrit dans le message de news:ca9bnu$fr8$
Cela peut être le fruit d'une requête ou d'un état mais je ne sais comment faire et crois bien que cela est impossible, non ?
"SCAN" a écrit dans le message de news:ca9blm$fq4$
Oui mais si il n'y a pas de champs communs ?
Peut on "demander" la création d'une liste contenant :
un champ date (se trouvant dans chaque base mais pas sous le même nom de champ) un champ commentaire (résultant de la concaténation de tout les autres champs de l'enregistrement de la base)
Avec selection sur le N° client commun à chaque base et trié par date ??
Sandrine. "Zeus" a écrit dans le message de news:
Salut,
il suffit de faire une requete union entre tes 3 tables tu selectionnes les champs communs aux trois 3 tables que tu veux faire
apparaitre dans chaque partie de ta requete
"Select * from [notes]
UNION ALL
SELECT * FROM [RDV]
UNION ALL
SELECT * FROM [ACTION]"
Je crois avoir trouver une solution mais je n'arrive pas à la programmer :
J'ai crée une table temporaire "HISTORIQUE" (ou un tableau via DIM) composé
de 3 champs : DATE & DESCRIPTION & ETAT (DATE et ETAT sont communs à mes
bases NOTE RDV et ACTION). Celle ci ne sera ouverte ensuite qu'en lecture.
Je parcours la table NOTE, je recherche les enregistrements concernant un
même client.
Pour chaque enregistrement correspondant je remplis la table HISTORIQUE avec
:
DATE = date de la prise de note
DESCRIPTION = concaténation de tout les champs de la base NOTE (hormis les
champs DATE et ETAT)
ETAT = etat de la note
Je fais de même pour la base RDV puis ACTION.
Je trie ma base HISTORIQUE sur la DATE et l'affiche.
A chaque changement de client, je supprime la base (ou tableau).
Qu'en pensez vous ?
Sandrine.
"SCAN" <contact@archives-nord.com> a écrit dans le message de
news:ca9bnu$fr8$1@s1.read.news.oleane.net...
Cela peut être le fruit d'une requête ou d'un état mais je ne sais comment
faire et crois bien que cela est impossible, non ?
"SCAN" <contact@archives-nord.com> a écrit dans le message de
news:ca9blm$fq4$1@s1.read.news.oleane.net...
Oui mais si il n'y a pas de champs communs ?
Peut on "demander" la création d'une liste contenant :
un champ date (se trouvant dans chaque base mais pas sous le même nom de
champ)
un champ commentaire (résultant de la concaténation de tout les autres
champs de l'enregistrement de la base)
Avec selection sur le N° client commun à chaque base
et trié par date ??
Sandrine.
"Zeus" <davidboulonnais@aol.com> a écrit dans le message de
news:e0fQKfsTEHA.1368@TK2MSFTNGP11.phx.gbl...
Salut,
il suffit de faire une requete union entre tes 3 tables
tu selectionnes les champs communs aux trois 3 tables que tu veux
faire
Je crois avoir trouver une solution mais je n'arrive pas à la programmer :
J'ai crée une table temporaire "HISTORIQUE" (ou un tableau via DIM) composé de 3 champs : DATE & DESCRIPTION & ETAT (DATE et ETAT sont communs à mes bases NOTE RDV et ACTION). Celle ci ne sera ouverte ensuite qu'en lecture.
Je parcours la table NOTE, je recherche les enregistrements concernant un même client. Pour chaque enregistrement correspondant je remplis la table HISTORIQUE avec : DATE = date de la prise de note DESCRIPTION = concaténation de tout les champs de la base NOTE (hormis les champs DATE et ETAT) ETAT = etat de la note
Je fais de même pour la base RDV puis ACTION.
Je trie ma base HISTORIQUE sur la DATE et l'affiche.
A chaque changement de client, je supprime la base (ou tableau).
Qu'en pensez vous ?
Sandrine.
"SCAN" a écrit dans le message de news:ca9bnu$fr8$
Cela peut être le fruit d'une requête ou d'un état mais je ne sais comment faire et crois bien que cela est impossible, non ?
"SCAN" a écrit dans le message de news:ca9blm$fq4$
Oui mais si il n'y a pas de champs communs ?
Peut on "demander" la création d'une liste contenant :
un champ date (se trouvant dans chaque base mais pas sous le même nom de champ) un champ commentaire (résultant de la concaténation de tout les autres champs de l'enregistrement de la base)
Avec selection sur le N° client commun à chaque base et trié par date ??
Sandrine. "Zeus" a écrit dans le message de news:
Salut,
il suffit de faire une requete union entre tes 3 tables tu selectionnes les champs communs aux trois 3 tables que tu veux faire
apparaitre dans chaque partie de ta requete
"Select * from [notes]
UNION ALL
SELECT * FROM [RDV]
UNION ALL
SELECT * FROM [ACTION]"
Zeus
c'est une solution qui doit fonctionner mais qui me semble lourde alors que la requete union aurait été plus simple : un exemple :
Une table NOTE Une table RDV Date Date Description Sujet Client Commentaire Durée Client
si je veux afficher les commentaire, la date et le client des 2 tables je fais
SELECT Date, description, client FROM [NOTE] UNION ALL SELECT Date, Commentaire, Client FROM [RDV]
une requete union permet de concatener plusieurs requetes ou plusieurs tables
il faut juste respecter l'ordre des champs dans les sous requetes sinon la date peut se retrouver dans la colonne commentaire par exemple....
c'est une solution qui doit fonctionner mais qui me semble lourde alors que
la requete union aurait été plus simple :
un exemple :
Une table NOTE Une table RDV
Date Date
Description Sujet
Client Commentaire
Durée
Client
si je veux afficher les commentaire, la date et le client des 2 tables je
fais
SELECT Date, description, client FROM [NOTE]
UNION ALL
SELECT Date, Commentaire, Client FROM [RDV]
une requete union permet de concatener plusieurs requetes ou plusieurs
tables
il faut juste respecter l'ordre des champs dans les sous requetes sinon la
date peut se retrouver dans la colonne commentaire par exemple....