2009-09-16 7 views
0

J'ai cette requête finale (j'ai essayé beaucoup d'entre eux pour faire ce travail), que je ne suis pas capable de l'exécuter.Comment puis-je exprimer cette requête d'une manière qui fonctionnera sur des données Excel?

SELECT customerNo, rating, dateApproved 
FROM ['worksheet$'] 
WHERE dateCreated = (SELECT MAX(dateCreated) FROM ['worksheet$']) 
AND status = 'Approved'" 

Pour customerNo 0001 il y a deux lignes ou peut-être plus, et je veux obtenir la ligne où la dateApproved est le maximum pour que customerNo.

Comment puis-je y parvenir? Cela me cause beaucoup de maux de tête. Déjà demandé à quelques amis et aussi googlé, pas de réponses pertinentes trouvées.

merci à l'avance

+0

Quel est le message d'erreur que vous obtenez lorsque vous essayez de exec cette requête –

+0

I » Je n'ai jamais essayé, mais peut-être que ce lien vous pointera dans le bon répertoire ection? http://support.microsoft.com/kb/321686 – Steven

+0

c'est bien, mais quand j'essaie d'exécuter une requête avec une sous-requête et renommer la sous-requête, l'erreur indique qu'il ne peut pas trouver l'objet renommé, ce serait la sous-requête –

Répondre

1

Le « SELECT MAX (... » va sous-requête pour renvoyer la date max créée pour la feuille de calcul Intégralité. Non seulement pour le client spécifique que vous aimez

I » ne sais pas si Excel soutiendra cette syntaxe, mais dans une base de données normale, je vous suggère cette requête pour obtenir ce que vous voulez:

SELECT customerNo, rating, dateApproved 
FROM ['worksheet$'] wkOuter 
WHERE status = 'Approved' 
    and dateCreated = (
    SELECT MAX(dateCreated) 
    FROM ['worksheet$'] wkInner 
    WHERE wkInner.customerNo = wkOuter.customerNo 
    ) 
+0

non, le max (dateCreated) est bien, quand je fais ce genre de requête, où la dateApproved est maximale, il jette une exception dans le code, me disant que le wkOuter ou wkInner est introuvable un objet, c'est le point que je suis coincé –

+0

Je cherche la syntaxe correcte ou d'une manière courante c'est fait, car logiquement je sais comment ça devrait marcher –

Questions connexes