explain analyze SELECT DISTINCT LibraryFileContent.datecreated, LibraryFileContent.filesize, LibraryFileContent.id, LibraryFileContent.md5, LibraryFileContent.sha1
FROM BinaryPackageFile,
LibraryFileAlias,
LibraryFileContent
WHERE binarypackagerelease in (select distinct binarypackagerelease from BinaryPackagePublishingHistory where BinaryPackagePublishingHistory.archive = 14516 AND BinaryPackagePublishingHistory.dateremoved IS NULL)
AND BinaryPackageFile.libraryfile = LibraryFileAlias.id
AND LibraryFileAlias.content = LibraryFileContent.id;
another possibility is the loop style
explain analyze SELECT DISTINCT LibraryFileCont ent.datecreated ,
LibraryFileCo ntent.filesize,
LibraryFileCo ntent.id,
LibraryFileCo ntent.md5,
LibraryFileCo ntent.sha1 eAlias, eContent lease in (select distinct binarypackagere lease from BinaryPackagePu blishingHistory where BinaryPackagePu blishingHistory .archive = 14516 AND BinaryPackagePu blishingHistory .dateremoved IS NULL) le.libraryfile = LibraryFileAlias.id s.content = LibraryFileCont ent.id;
FROM BinaryPackageFile,
LibraryFil
LibraryFil
WHERE binarypackagere
AND BinaryPackageFi
AND LibraryFileAlia