Comme le montre à: How to limit an SQL query to return at most one of something?Comment puis-je écrire une version SQL de cette requête LINQ?
je les tableaux suivants:
Plates-formes
- PlatformID
- Nom
Produits
- ProductID
- Nom
Communiqués
- ID
- ProductID
- PlatformID
- Version
- ReleaseDate
La table releases stocke chaque version d'un produit logiciel pour une plate-forme particulière. Je souhaite écrire une requête pour renvoyer la dernière version de chaque produit pour chaque plate-forme dans la table Releases. C'EST À DIRE. Si je libère le produit X version 2.0 sur les plates-formes A, B et C, il y aura 3 enregistrements dans la table de presse:
- un pour le produit X version 2.0 sur la plateforme A publiée le 2010-11-17
- un pour le produit X version 2.0 sur la plateforme B publiée le 2010-11-17
- un pour le produit X version 2.0 sur la plateforme C publiée le 2010-11-17
Ainsi, étant donné un numéro de produit, comment J'obtiens cette information? J'ai essayé d'utiliser GROUP BY comme la solution LINQ que j'ai utilisée mais apparemment je ne peux pas traduire LINQ en SQL aussi bien que .NET.
Merci beaucoup, la première solution était parfaite. Le second n'aurait pas été approprié puisque j'utilise la syntaxe 'Major.Minor.Maintenance.Build' pour les versions, donc je ne pense pas que' MAX() 'aurait traité cela correctement. –