Sie sind vermutlich noch nicht im Forum angemeldet - Klicken Sie hier um sich kostenlos anzumelden Impressum 
Sie können sich hier anmelden
Dieses Thema hat 1 Antworten
und wurde 744 mal aufgerufen
 Diskussion zu Abfragen
JBM Offline



Beiträge: 142

25.10.2010 00:21
Alle Gruppenmitglieder eines Typs zu markierten Bildern Antworten

Hallo nochmals,

Ich habe grundsätzlich die entwickelten Bilder mit den zugehörigen RAWs in einer Gruppe zusammengefasst, wobei das Gruppenbild (also der Repräsentant) das jeweils beste entwickelte Bild (in der Regel also ein JPG) ist.
Wenn ich nun bestimmte Bilder in Pixafe markiert habe, die ich nochmals komplett neu überarbeiten möchte, brauche ich hierfür alle entsprechenden Ursprungsbilder (in der Regel sind das die RAWs). Ausgehend von dieser Startsituation möchte ich die Markierung also auf alle RAWs (oder z.B. auch die PSD-Dateien) der betroffenen Gruppen übertragen, um diese dann im nächsten Schritt mit den bereits vorhandenen Sidecars per externer Software bearbeiten zu können. Für grössere Bildermengen ist das ohne die entsprechende Abfrage in Query nicht vernünftig machbar.

Auch hier führt der Weg aus den beschriebenen Gründen zunächst über die Vergabe eines Dummyschlagworts für die ursprüngliche Bildauswahl.

Dann lasse ich folgende Abfrage auf die Datenbank los:

select BildID from bild where
BildID in
(SELECT b.ID from bild b where
b.idgruppe in
(select b1.IDgruppe from bild b1, bild_wort bw, schlagwort c where
b1.ID=bw.idbild and bw.idwort=c.id and c.wort='$2'))

AND
BildID in
(SELECT b2.ID from bild b2, extension ext where
(ext.ext = '$1' and ext.id = b2.ext and b2.israw=0 ) or
( ext.ext = '$1' and ext.id = b2.israw and b2.israw<>0 )
)


Als Parameter werden übergeben: $1 = Dateityp; $2 = Dummyschlagwort

Erklärung:
Der blau markierte Teil der Abfrage wird im Beitrag Alle Gruppenmitglieder zu markierten Bildern ausführlich beschrieben und selektiert alle Gruppenmitglieder der betroffenen Bildgruppen. Was noch fehlt ist also, aus diesem Teil nur diejenigen Bilder des gewünschten Dateityps herauszukramen.
Hierzu unterscheidet der grüne Teil durch die OR-Verknüpfung 2 Fälle: A) Wenn es sich um ein RAW-Bild handelt (israw <> 0), verweist das Datenfeld bild.israw auf den Dateityp. B) Ist das Bild kein RAW-Format, steht der Dateityp im Feld bild.ext.
Entsprechend werden in diesem Teil der Abfrage alle Bilder herausgesucht, die den gewünschten Dateityp haben.
Bleibt abschließend noch die UND-Verknüpfung der beiden Teile und das gewünschte Ergebnis ist in Pixafe markiert.

Auch bei dieser Abfrage werden erstmal keine Einzelbilder (die also keiner Gruppe angehören) berücksichtigt.

Viel Spaß mit dieser Abfrage.

Gruß
Jürgen

Dateianlage:
Typ_Gruppe_Schlagwort.zip
Peter Offline



Beiträge: 873

25.10.2010 01:31
#2 RE: Alle Gruppenmitglieder eines Typs zu markierten Bildern Antworten

Super, vielen Dank

gruß,
Peter

 Sprung