J'ai un probl=E8me de r=E9p=E9tition d'enregistrement dans une=20
requete.
j'ai une table reprenant des mouvements et une table=20
signal=E9tique,
je fais une liaison des mouvement vers le signal=E9tique=20
pour retrouver la description.
La zone EtudeChantier.NumChantier n'est pas une cl=E9!
lorsque j'ai plusieurs ligne dans la table EtudeChantier=20
il me duplicie les mouvements.....
HELP HELP.
Merci d'avance =E0 tous.
SELECT MVT.MVTYPE AS Expr1, MVT.MVDATE AS Expr2,
MVT.MVNUMCHA, MVT.MVREGROUP, MVT.MVNATURE,=20
MVT.MVENGIN, MVT.MVQTE,=20
MVT.MVPOINTQTE, MVT.MVTAUX, MVT.MVTMONTANT,
ENGIN.ENCDECHA, EtudeChantier.RESPChant
FROM MVT INNER JOIN
ENGIN ON MVT.MVENGIN =3D ENGIN.ENNUM INNER JOIN
EtudeChantier ON MVT.MVNUMCHA =3D=20
EtudeChantier.NumChantier
WHERE (MVT.MVDATE >=3D 20040301) AND (MVT.MVTYPE=3D 'P')=20
AND (MVT.MVDATE <=3D 20040331)
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
Fred BROUARD
et avec DISTINCT ???
PS : utilise le between c'est plus optimisé pour tes fourchettes de date !
SELECT DISTINCT MVT.MVTYPE AS Expr1, MVT.MVDATE AS Expr2, MVT.MVNUMCHA, MVT.MVREGROUP, MVT.MVNATURE, MVT.MVENGIN, MVT.MVQTE, MVT.MVPOINTQTE, MVT.MVTAUX, MVT.MVTMONTANT, ENGIN.ENCDECHA, EtudeChantier.RESPChant FROM MVT INNER JOIN ENGIN ON MVT.MVENGIN = ENGIN.ENNUM INNER JOIN EtudeChantier EC ON MVT.MVNUMCHA = EC.NumChantier WHERE MVT.MVDATE BETWEEN CAST('20040301' AS DATETIME) AND CAST('20040331) AS DATETIME) AND MVT.MVTYPE= 'P'
A +
-- Frédéric BROUARD, MVP Microsoft SQL Server. Langage SQL / Delphi / web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ****************** mailto: ******************
Michel a écrit:
Bonjour à tous,
J'ai un problème de répétition d'enregistrement dans une requete.
j'ai une table reprenant des mouvements et une table signalétique, je fais une liaison des mouvement vers le signalétique pour retrouver la description. La zone EtudeChantier.NumChantier n'est pas une clé! lorsque j'ai plusieurs ligne dans la table EtudeChantier il me duplicie les mouvements.....
HELP HELP.
Merci d'avance à tous.
SELECT MVT.MVTYPE AS Expr1, MVT.MVDATE AS Expr2, MVT.MVNUMCHA, MVT.MVREGROUP, MVT.MVNATURE, MVT.MVENGIN, MVT.MVQTE, MVT.MVPOINTQTE, MVT.MVTAUX, MVT.MVTMONTANT, ENGIN.ENCDECHA, EtudeChantier.RESPChant FROM MVT INNER JOIN ENGIN ON MVT.MVENGIN = ENGIN.ENNUM INNER JOIN EtudeChantier ON MVT.MVNUMCHA = EtudeChantier.NumChantier WHERE (MVT.MVDATE >= 20040301) AND (MVT.MVTYPE= 'P') AND (MVT.MVDATE <= 20040331)
et avec DISTINCT ???
PS : utilise le between c'est plus optimisé pour tes fourchettes de date !
SELECT DISTINCT
MVT.MVTYPE AS Expr1, MVT.MVDATE AS Expr2,
MVT.MVNUMCHA, MVT.MVREGROUP, MVT.MVNATURE,
MVT.MVENGIN, MVT.MVQTE,
MVT.MVPOINTQTE, MVT.MVTAUX, MVT.MVTMONTANT,
ENGIN.ENCDECHA, EtudeChantier.RESPChant
FROM MVT
INNER JOIN ENGIN
ON MVT.MVENGIN = ENGIN.ENNUM
INNER JOIN EtudeChantier EC
ON MVT.MVNUMCHA = EC.NumChantier
WHERE MVT.MVDATE BETWEEN CAST('20040301' AS DATETIME)
AND CAST('20040331) AS DATETIME)
AND MVT.MVTYPE= 'P'
A +
--
Frédéric BROUARD, MVP Microsoft SQL Server. Langage SQL / Delphi / web
Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html
Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com
****************** mailto:brouardf@club-internet.fr ******************
Michel a écrit:
Bonjour à tous,
J'ai un problème de répétition d'enregistrement dans une
requete.
j'ai une table reprenant des mouvements et une table
signalétique,
je fais une liaison des mouvement vers le signalétique
pour retrouver la description.
La zone EtudeChantier.NumChantier n'est pas une clé!
lorsque j'ai plusieurs ligne dans la table EtudeChantier
il me duplicie les mouvements.....
HELP HELP.
Merci d'avance à tous.
SELECT MVT.MVTYPE AS Expr1, MVT.MVDATE AS Expr2,
MVT.MVNUMCHA, MVT.MVREGROUP, MVT.MVNATURE,
MVT.MVENGIN, MVT.MVQTE,
MVT.MVPOINTQTE, MVT.MVTAUX, MVT.MVTMONTANT,
ENGIN.ENCDECHA, EtudeChantier.RESPChant
FROM MVT INNER JOIN
ENGIN ON MVT.MVENGIN = ENGIN.ENNUM INNER JOIN
EtudeChantier ON MVT.MVNUMCHA =
EtudeChantier.NumChantier
WHERE (MVT.MVDATE >= 20040301) AND (MVT.MVTYPE= 'P')
AND (MVT.MVDATE <= 20040331)
PS : utilise le between c'est plus optimisé pour tes fourchettes de date !
SELECT DISTINCT MVT.MVTYPE AS Expr1, MVT.MVDATE AS Expr2, MVT.MVNUMCHA, MVT.MVREGROUP, MVT.MVNATURE, MVT.MVENGIN, MVT.MVQTE, MVT.MVPOINTQTE, MVT.MVTAUX, MVT.MVTMONTANT, ENGIN.ENCDECHA, EtudeChantier.RESPChant FROM MVT INNER JOIN ENGIN ON MVT.MVENGIN = ENGIN.ENNUM INNER JOIN EtudeChantier EC ON MVT.MVNUMCHA = EC.NumChantier WHERE MVT.MVDATE BETWEEN CAST('20040301' AS DATETIME) AND CAST('20040331) AS DATETIME) AND MVT.MVTYPE= 'P'
A +
-- Frédéric BROUARD, MVP Microsoft SQL Server. Langage SQL / Delphi / web Livre SQL - col. Référence : http://sqlpro.developpez.com/bookSQL.html Le site du SQL, pour débutants et pros : http://sqlpro.developpez.com ****************** mailto: ******************
Michel a écrit:
Bonjour à tous,
J'ai un problème de répétition d'enregistrement dans une requete.
j'ai une table reprenant des mouvements et une table signalétique, je fais une liaison des mouvement vers le signalétique pour retrouver la description. La zone EtudeChantier.NumChantier n'est pas une clé! lorsque j'ai plusieurs ligne dans la table EtudeChantier il me duplicie les mouvements.....
HELP HELP.
Merci d'avance à tous.
SELECT MVT.MVTYPE AS Expr1, MVT.MVDATE AS Expr2, MVT.MVNUMCHA, MVT.MVREGROUP, MVT.MVNATURE, MVT.MVENGIN, MVT.MVQTE, MVT.MVPOINTQTE, MVT.MVTAUX, MVT.MVTMONTANT, ENGIN.ENCDECHA, EtudeChantier.RESPChant FROM MVT INNER JOIN ENGIN ON MVT.MVENGIN = ENGIN.ENNUM INNER JOIN EtudeChantier ON MVT.MVNUMCHA = EtudeChantier.NumChantier WHERE (MVT.MVDATE >= 20040301) AND (MVT.MVTYPE= 'P') AND (MVT.MVDATE <= 20040331)