Bonjour à tous,

voici ma requete:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
SELECT         
LTRIM(RTRIM(tgAlma.Descrip)) as Magasin,                 
tgAgrupCliente.Descrip as CatégorieClient,                          
MONTH (taHistorico.fechacreacion) as MOIS,      
YEAR (taHistorico.fechacreacion) as ANNEE,          
SUM((taHistorico.PrecioCosteMedio * (taHistorico.CdadMov * (CASE taTipoMov.Entrada WHEN 1 THEN -1 ELSE 1 END)))) as PAMPTotal,         
SUM((taHistorico.PrecioVenta * (taHistorico.CdadMov * (CASE taTipoMov.Entrada WHEN 1 THEN -1 ELSE 1 END)))) as PrixVenteBrut,         
SUM((taHistorico.PrecioCompra * (taHistorico.CdadMov * (CASE taTipoMov.Entrada WHEN 1 THEN -1 ELSE 1 END)))) as PrixAchatTotal,         
 
SUM((taHistorico.ImpBrutoLinea * (CASE taTipoMov.Entrada WHEN 1 THEN -1 ELSE 1 END))) AS taHistorico_ImpBrutoLinea,         
SUM((taHistorico.ImpDctoLinea * (CASE taTipoMov.Entrada WHEN 1 THEN -1 ELSE 1 END))) AS MontantRemise,         
SUM((taHistorico.ImpNetoLinea * (CASE taTipoMov.Entrada WHEN 1 THEN -1 ELSE 1 END))) AS PrixVenteNet,         
SUM(((taHistorico.ImpNetoLinea * (CASE taTipoMov.Entrada WHEN 1 THEN -1 ELSE 1 END))- (taHistorico.PrecioCosteMedio * (taHistorico.CdadMov * (CASE taTipoMov.Entrada WHEN 1 THEN -1 ELSE 1 END)))  ))AS MargePR,        
 LTRIM(RTRIM(tgEmpresa.Razon)) as Société
FROM   taHistorico        
LEFT OUTER JOIN taArticulo    ON taHistorico.NumIntArticulo = taArticulo.NumInterno       
LEFT OUTER JOIN taArticulocompl    ON taarticulo.NumInterno = taArticuloCompl.NumInterno       
LEFT OUTER JOIN tgCliente     ON taHistorico.Cliente = tgCliente.Codigo        
LEFT OUTER JOIN tgAlma      ON taHistorico.Emp = tgAlma.Emp AND taHistorico.Almacen = tgAlma.Almacen        
LEFT OUTER JOIN taFamProveedor   ON taHistorico.Marca = taFamProveedor.Marca AND taHistorico.FamiliaProv = taFamProveedor.Codigo        
LEFT OUTER JOIN taFamInterna    ON taHistorico.Marca = taFamInterna.Marca AND taHistorico.FamiliaInt = taFamInterna.Codigo        
LEFT OUTER JOIN tgTipoFacturacion  ON taHistorico.AlmTipoFacturacion = tgTipoFacturacion.TipoFacturacion        
LEFT OUTER JOIN taMostradorOpcion  ON taHistorico.OpcionMos = taMostradorOpcion.OpcionMos        
LEFT OUTER JOIN taDctoCompra    ON taHistorico.Marca = taDctoCompra.Marca AND taHistorico.Proveedor = taDctoCompra.Proveedor AND taHistorico.GrupoDctoCompra = taDctoCompra.GrupDctoComp AND taHistorico.TipoPedido = taDctoCompra.TipoPedido        
LEFT OUTER JOIN tgProveedor    ON taHistorico.Proveedor = tgProveedor.Codigo       
 LEFT OUTER JOIN taEntradaOpcion   ON taHistorico.OpcionEnt = taEntradaOpcion.OpcionEnt         
LEFT OUTER JOIN tgAgrupCliente   ON taHistorico.AlmAgrupCliente = tgAgrupCliente.Codigo       
LEFT OUTER JOIN taCategoriaPieza  ON taHistorico.Marca = taCategoriaPieza.Marca AND taHistorico.CodigoCategoria = taCategoriaPieza.Codigo          
LEFT OUTER JOIN taCategoriaStock  ON tahistorico.emp=taCategoriastock.emp and taHistorico.Marca = taCategoriaStock.Marca AND taHistorico.CategoriaStock = taCategoriaStock.Codigo       
LEFT OUTER JOIN tyusuario     ON taHistorico.VendedorAlmacen = tyusuario.codigo        LEFT OUTER JOIN tgvendedor    ON tahistorico.emp=tgvendedor.emp and tahistorico.vendedor=tgvendedor.vendedor        
LEFT OUTER JOIN taclaseproducto   ON taHistorico.Marca = taclaseproducto.Marca AND taHistorico.claseproducto = taclaseproducto.Codigo       
 LEFT OUTER JOIN taConstructor   ON taArticulo.Marca = taConstructor.marca AND  taArticulo.Constructor = taConstructor.codigo       
 LEFT OUTER JOIN taMostrador   ON taHistorico.Emp = taMostrador.Emp AND taHistorico.NumIntOrigen = taMostrador.NumIntMostrador       
 LEFT OUTER JOIN taRappel    ON taHistorico.CodigoRappel = taRappel.Codigo AND taHistorico.Marca = taRappel.Marca,        
 taTipoMov,       
 tgGrupoCont,    
 tgEmpresa,     
 tgMarca        
 WHERE     ( taHistorico.Emp = tgEmpresa.Emp ) and    ( taHistorico.Marca = tgMarca.Marca ) and      ( taHistorico.TipoMov = taTipoMov.TipoMov ) and   
 ( taHistorico.GrupoCont = tgGrupoCont.GrupoCont ) and    ( ( taHistorico.Emp in ('001','002','003','004','005','006') ) AND      ( taHistorico.fechacreacion >= '1-09-2012 0:0:0.000' ) AND 
 ( taHistorico.fechacreacion <= '30-09-2012 23:59:59.000' ) AND      ( taTipoMov.EstadVentas >= 1 ) AND    (taTipoMov.Taller = 0) AND    
 ( taHistorico.TipoMov in ('ECO','EGS','EIG','EIN','EIS','ERE','ESS','ETR','ETT','REP','SCO','SF1','SFA','SIG','SIN','SIS','SRE','SSS','STT'))) 
GROUP BY  tgEmpresa.Razon, tgAlma.Descrip, tgAgrupCliente.Descrip, taHistorico.fechacreacion
J'aurai voulu alléger la requête.

SI j’enlève des jointures qui ne sont pas utilisé (la table n'ai pas référencé dans le WHERE ni dans le SELECT) est-ce que cela peux influencer le résultat de cette requete ?

Merci d'avance pour votre aide

guigui69