Quel objet! Et oui... tout ça à la fois...
Je vous explique mon problème...
J'ai 5 tables quasi identiques.
Dans les 2 premières, il y a 5 champs de type date en moins que dans les 3
autres tables.
J'ai absolument besoin de faire une requête Union de ces 5 tables.
Bien sur cela ne marche pas en l'état actuel (pas le même nombre de champs).
J'ai donc créé, pour chacune des 2 premières tables, 1 requête reprenant ses
champs et j'ai ajouté 5 champs de type date que j'ai mis à null
Date1:null
Date2:null
Date3:null
...
J'ai fait l'union des 2 requêtes et des 3 tables.
Bingo !!! Ca marche... pas !
Ou presque pas...
En effet les champs Date1 à Date5 existent bien dans ma requête union mais
ne sont pas de type date! (comment je le sais? des calculs sur les dates me
renvoient #Erreur; et dans l'affichage les données sont alignés à gauche au
lieu d'être aligné à droite).
Quelqu'un aurait il une idée de comment faire?
Car pour mes 2 premières requêtes, dans les champs Date1 à Date5, il ne faut
aucune valeur (donc null? ou vide?).
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Bonjour - il n'est pas nécessaire d'avoir le même type de champ pour le retrouver en union - normalement, le format du champ retourné sera celui du champ de la première requete union.
exemple : SELECT champ1 FROM LATABLE1 UNION SELECT champ2 FROM LATABLE2;
tonChamp sera de type texte si champ1 est de type texte dans latable1
- il est nécessaire d'avoir le même nombre de colonnes dans toutes les requêtes composant la requete union : exemple :
SELECT champ1,"" as expr1,"" as expr2 FROM LATABLE1 UNION SELECT champ2, champ3, champ4 FROM LATABLE2;
devrait fonctionner
donc : même nombre de colonnes et attention au format des champs de la première requête, sinon, forcer le type : SELECT cdate(champ1),cstr(champ2) as expr1,null as expr2 FROM LATABLE1
a+
-- Arnaud --------------------------------------------- infos, conseils et liens : http://www.mpfa.info --------------------------------------------- "Florent Faivre" a écrit dans le message de news: e61j5v$sc1$
Bonjour à tous,
Quel objet! Et oui... tout ça à la fois... Je vous explique mon problème... J'ai 5 tables quasi identiques. Dans les 2 premières, il y a 5 champs de type date en moins que dans les 3 autres tables.
J'ai absolument besoin de faire une requête Union de ces 5 tables. Bien sur cela ne marche pas en l'état actuel (pas le même nombre de champs). J'ai donc créé, pour chacune des 2 premières tables, 1 requête reprenant ses champs et j'ai ajouté 5 champs de type date que j'ai mis à null Date1:null Date2:null Date3:null ...
J'ai fait l'union des 2 requêtes et des 3 tables. Bingo !!! Ca marche... pas ! Ou presque pas... En effet les champs Date1 à Date5 existent bien dans ma requête union mais ne sont pas de type date! (comment je le sais? des calculs sur les dates me renvoient #Erreur; et dans l'affichage les données sont alignés à gauche au lieu d'être aligné à droite).
Quelqu'un aurait il une idée de comment faire? Car pour mes 2 premières requêtes, dans les champs Date1 à Date5, il ne faut aucune valeur (donc null? ou vide?).
Merci de votre aide.
Florent
Bonjour
- il n'est pas nécessaire d'avoir le même type de champ pour le retrouver en union
- normalement, le format du champ retourné sera celui du champ de la première requete union.
exemple :
SELECT champ1 FROM LATABLE1
UNION
SELECT champ2 FROM LATABLE2;
tonChamp sera de type texte si champ1 est de type texte dans latable1
- il est nécessaire d'avoir le même nombre de colonnes dans toutes les requêtes composant la requete union :
exemple :
SELECT champ1,"" as expr1,"" as expr2 FROM LATABLE1
UNION
SELECT champ2, champ3, champ4 FROM LATABLE2;
devrait fonctionner
donc : même nombre de colonnes et attention au format des champs de la première requête,
sinon, forcer le type :
SELECT cdate(champ1),cstr(champ2) as expr1,null as expr2 FROM LATABLE1
a+
--
Arnaud
---------------------------------------------
infos, conseils et liens : http://www.mpfa.info
---------------------------------------------
"Florent Faivre" <ffaivre-no-spam@strategir.com> a écrit dans le message de news: e61j5v$sc1$1@s1.news.oleane.net...
Bonjour à tous,
Quel objet! Et oui... tout ça à la fois...
Je vous explique mon problème...
J'ai 5 tables quasi identiques.
Dans les 2 premières, il y a 5 champs de type date en moins que dans les 3
autres tables.
J'ai absolument besoin de faire une requête Union de ces 5 tables.
Bien sur cela ne marche pas en l'état actuel (pas le même nombre de champs).
J'ai donc créé, pour chacune des 2 premières tables, 1 requête reprenant ses
champs et j'ai ajouté 5 champs de type date que j'ai mis à null
Date1:null
Date2:null
Date3:null
...
J'ai fait l'union des 2 requêtes et des 3 tables.
Bingo !!! Ca marche... pas !
Ou presque pas...
En effet les champs Date1 à Date5 existent bien dans ma requête union mais
ne sont pas de type date! (comment je le sais? des calculs sur les dates me
renvoient #Erreur; et dans l'affichage les données sont alignés à gauche au
lieu d'être aligné à droite).
Quelqu'un aurait il une idée de comment faire?
Car pour mes 2 premières requêtes, dans les champs Date1 à Date5, il ne faut
aucune valeur (donc null? ou vide?).
Bonjour - il n'est pas nécessaire d'avoir le même type de champ pour le retrouver en union - normalement, le format du champ retourné sera celui du champ de la première requete union.
exemple : SELECT champ1 FROM LATABLE1 UNION SELECT champ2 FROM LATABLE2;
tonChamp sera de type texte si champ1 est de type texte dans latable1
- il est nécessaire d'avoir le même nombre de colonnes dans toutes les requêtes composant la requete union : exemple :
SELECT champ1,"" as expr1,"" as expr2 FROM LATABLE1 UNION SELECT champ2, champ3, champ4 FROM LATABLE2;
devrait fonctionner
donc : même nombre de colonnes et attention au format des champs de la première requête, sinon, forcer le type : SELECT cdate(champ1),cstr(champ2) as expr1,null as expr2 FROM LATABLE1
a+
-- Arnaud --------------------------------------------- infos, conseils et liens : http://www.mpfa.info --------------------------------------------- "Florent Faivre" a écrit dans le message de news: e61j5v$sc1$
Bonjour à tous,
Quel objet! Et oui... tout ça à la fois... Je vous explique mon problème... J'ai 5 tables quasi identiques. Dans les 2 premières, il y a 5 champs de type date en moins que dans les 3 autres tables.
J'ai absolument besoin de faire une requête Union de ces 5 tables. Bien sur cela ne marche pas en l'état actuel (pas le même nombre de champs). J'ai donc créé, pour chacune des 2 premières tables, 1 requête reprenant ses champs et j'ai ajouté 5 champs de type date que j'ai mis à null Date1:null Date2:null Date3:null ...
J'ai fait l'union des 2 requêtes et des 3 tables. Bingo !!! Ca marche... pas ! Ou presque pas... En effet les champs Date1 à Date5 existent bien dans ma requête union mais ne sont pas de type date! (comment je le sais? des calculs sur les dates me renvoient #Erreur; et dans l'affichage les données sont alignés à gauche au lieu d'être aligné à droite).
Quelqu'un aurait il une idée de comment faire? Car pour mes 2 premières requêtes, dans les champs Date1 à Date5, il ne faut aucune valeur (donc null? ou vide?).