ich bin totaler SQL neuling und versuche grad ein gefundenes Script mit SQL abfragen umzubasteln.
Folgender SQL Befehl funktioniert:
Code: Alles auswählen
SELECT Adobe_images.id_local as photo_id, Adobe_images.orientation as orientation, Adobe_images.rating as rating,
AgHarvestedExifMetadata.gpsLatitude as latitude, AgHarvestedExifMetadata.gpsLongitude as longitude,
AgLibraryRootFolder.absolutePath || AgLibraryFolder.pathFromRoot || AgLibraryFile.baseName || '.' || AgLibraryFile.extension as datei,
Adobe_AdditionalMetadata.xmp, Adobe_images.captureTime, Adobe_imageDevelopSettings.hasDevelopAdjustmentsEx as edits,
AgLibraryFolderStackImage.stack as stack, Adobe_images.colorLabels as colorLabels
FROM Adobe_images
JOIN AgLibraryFile ON AgLibraryFile.id_local = Adobe_images.rootFile
JOIN AgHarvestedExifMetadata ON AgHarvestedExifMetadata.image = Adobe_images.id_local
JOIN AgLibraryFolder ON AgLibraryFolder.id_local = AgLibraryFile.folder
JOIN AgLibraryRootFolder ON AgLibraryRootFolder.id_local = AgLibraryFolder.rootFolder
JOIN Adobe_AdditionalMetadata ON Adobe_AdditionalMetadata.image = Adobe_images.id_local
JOIN Adobe_imageDevelopSettings ON Adobe_imageDevelopSettings.image = Adobe_images.id_local
LEFT JOIN AgLibraryFolderStackImage ON AgLibraryFolderStackImage.image = Adobe_images.id_local
mit einem zweiten sql befehl kann ich schauen, in welchen "selections" die photo_id liegt:
Code: Alles auswählen
SELECT AgLibraryCollectionImage.collection
FROM Adobe_images
JOIN AgLibraryCollectionImage ON Adobe_images.id_local = AgLibraryCollectionImage.image
WHERE Adobe_images.id_local = xxx
wobei xxx die photo_id ist.
Geht es, dass ich die erste Abfrage so umstelle, dass mir nur die zeilen ausgegeben werden, wenn bei der zweiten abfrage irgendwas ausser NULL rauskommt?
Ich hoffe man kann so einigermaßen verstehen was ich meine.. oder?
![Wink ;)](./images/smilies/icon_wink.gif)
Gruß und Dank