Ciao a tutti, ho la seguente query:
Però per essere eseguita ci mette circa un minuto ed è un pò troppo.codice:SELECT [idListino] ,[fidFornitore] ,[fidPaese] ,[NomeProdotto] ,[Atc] ,[PrincipioAttivo] ,[Brand] ,[PackSize] ,[CodificaEU] ,[Ean] ,[Prezzo] ,[DataListino] ,[Paesi].Paese as Paese ,[Fornitori].RagioneSociale as RagioneSociale ,'Nessun Prodotto Ita corrispondente.' FROM Listini INNER JOIN Fornitori ON fidFornitore=idFornitore INNER JOIN Paesi ON fidPaese=idPaese WHERE DataListino IN (SELECT max(DataListino) AS DATA_MAX FROM Listini WHERE fidFornitore=@myidFornitore AND fidPaese=@myidPaese GROUP BY fidFornitore, fidPaese) AND (CodificaEU IS NOT NULL AND CodificaEU<>'') OR (Ean IS NOT NULL AND Ean<>'') AND fidFornitore=@myidFornitore AND fidPaese=@myidPaese ORDER BY NomeProdotto;
Sicuramente il problema è nella prima istruzione WHERE dove cerco in base al max(DataListino). Come posso ottimizzare questa query?
Grzazie a tutti.

Rispondi quotando
