2017-07-18 1 views
0

Je n'arrive pas à récupérer les derniers enregistrements d'une table en fonction d'une requête sur une autre table. J'ai trouvé de nombreuses solutions qui se rapprochent en utilisant l'analogie du "dernier produit commandé pour chaque client" mais elles ne sont pas parfaites.Récupérer la dernière entrée d'une table en fonction d'une requête sur une autre

J'ai deux tables avec des enregistrements liés en utilisant le champ dailyrecno_i. Je voudrais récupérer la dernière entrée dans la table 2 liée à cette clé.

Les tableaux et la sortie désirée sont les suivants, tout conseil apprécié.

enter image description here

+0

Qu'avez-vous essayé jusqu'à présent? Postez votre requête afin que nous puissions vous aider à la résoudre. –

+0

On dirait "groupwise max"; voir l'étiquette que j'ai ajouté. –

Répondre

0

C'est à partir de MS SQL, mais cela devrait vous donner une idée. Notez que j'ai seulement répliqué votre sortie désirée de vos données d'échantillon ainsi je ne suis pas sûr s'il y a n'importe quelle condition que j'ai manquée.

SELECT [@table1].dailyrecno_i , 
    MAX([moc_noteno_i]) , 
    header , 
    MAX([text]) 
FROM @table1 
    LEFT JOIN @table2 ON [@table1].dailyrecno_i = [@table2].dailyrecno_i 
GROUP BY [@table1].dailyrecno_i , 
    header;