2017-05-27 29 views
0

これは私が何をしているのかを説明するのはちょっと難しいですが、ここにはあります。私はsoftware_releasesplatformsを参照する必要がある2つのテーブルがあります。ソフトウェアリリースには、プラットフォームID、ソフトウェアID、およびバージョン番号が含まれます。個別の列の値の最新のエントリを取得する

個別のプラットフォームごとに最新のバージョン番号を取得したいと考えています。

私が現在持っているクエリは以下の通りです:

5 27/05/2017 22:37 3 7 Windows 3.0.0.0 
9 27/05/2017 22:56 3 7 Windows 2.6.0.0 
7 27/05/2017 22:46 3 5 Android 2.5.1.1 
1 27/05/2017 23:21 3 5 Android 2.5.0.0 

を次のように列の順序は次のとおりです:リリース

  • リリースID
  • 日返し

    SELECT ReleaseID, 
         DateCreated, 
         SoftwareID, 
         platforms.PlatformID, 
         PlatformName, 
         VersionNumber 
    FROM  software_releases, platforms 
    WHERE software_releases.PlatformID = platforms.PlatformID 
    AND  software_releases.SoftwareID='3' 
    ORDER BY VersionNumber DESC 
    

  • ソフトウェアID
  • プラットフォームID
  • バージョンID
  • 、私は次のように返したいと思っています私はこのため、指定されたソフトウェアのIDに対して返される各プラットフォームの最新のリリースを取得している探しています

5 27/05/2017 22:37 3 7 Windows 3.0.0.0 
7 27/05/2017 22:46 3 5 Android 2.5.1.1 

ご協力いただきありがとうございます。

+1

https://www.google.com/search?q=mysql+groupwise+maximum – CBroe

+0

@CBroeおかげで、それが呼ばれていたものだがないアイデアは私のクエリを変更 - でしたそれなしでGoogleに厄介なこと – Boardy

答えて

0

私はCBroweのコメントからこの回答を得ました。グループワイズの最大クエリと呼ばれていたのはわかりませんでした。

私がすることが

  SELECT * FROM (SELECT DateCreated, SoftwareID, software_releases.PlatformID, 
     VersionNumber, PlatformName FROM software_releases, platforms WHERE 
     SoftwareID='3' AND 
     platforms.PlatformID = software_releases.PlatformID ORDER BY VersionNumber DESC) 
     AS s GROUP BY PlatformID 
関連する問題