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 5 Antworten
und wurde 531 mal aufgerufen
 Diskussion zu Abfragen
JBM Offline



Beiträge: 142

12.09.2010 20:34
Schlagwort und eingefügt in den letzten X Tagen Antworten

Hallo zusammen,

beim etappenweisen Verschlagworten der in den letzten Wochen eingelesenen Bilder war folgende Abfrage für mich nützlich:
Ich wollte alle Bilder markieren, die ein bestimmtes Schlagwort tragen und in den letzten x Tagen eingelesen wurden.
Hier die Abfrage, wie sie in Query eingegeben wird:

Beschreibung:
Bilder mit Schlagwort = $1 und eingefügt in den letzten $2 Tagen

SQL:
select BildID from bild_wort b, schlagwort c where BildID=b.idbild and b.idwort=c.id and c.wort='$1' and DATE(current date) - DATE(xbild.inserted) <= $2

Vielleicht könnt ihr ja Fragmente aus dieser Abfrage brauchen ...

Gruß
Jürgen

Nolle Offline



Beiträge: 178

14.09.2010 18:29
#2 RE: Schlagwort und eingefügt in den letzten X Tagen Antworten

Hallo Jürgen,

vielen Dank das du die Abfrage hier reingestellt hast.

Könntest du mir vielleicht noch sagen wie ich den Code ändern muß, wenn ich nicht nach dem Einfügedatum suchen möchte sondern nach den Erstellungsdatum des Bildes.

Gruß
Holger

JBM Offline



Beiträge: 142

14.09.2010 20:26
#3 RE: Schlagwort und eingefügt in den letzten X Tagen Antworten

Hallo Holger,

ich bin ja nun auch nicht so der SQL-Freak und brech mir da schon immer einen ab ...
Hab mich anhand Peter's Beispiel und dem Pixafe-Datenmodell (das hierzu wirklich sehr nützlich ist!) durchgehangelt.

Warum möchtest Du die Abfrage eigentlich mit Query machen? In der normalen Suchmaske kannst Du doch nach der Kombination aus Schlagwort(en) und Bilddatum suchen.

Gruß
Jürgen

Nolle Offline



Beiträge: 178

15.09.2010 17:31
#4 RE: Schlagwort und eingefügt in den letzten X Tagen Antworten

Hallo Jürgen,

in der normalen Suchmaske ist das so nicht möglich. Da kann ich nur die Kombination aus Schlagwort und einem Bilddatum eingeben. Nicht aber wie in deiner Abfrage den Zeitraum über mehere Tage selbst bestimmen.

Werde mal versuchen mir selbst was zu basteln, eigentlich müßte ja nur in der Abfrage das Einfügedatum gegen das Erstellungsdatum austauschen. Mal sehen ob es klappt.

Gruß
Holger

JBM Offline



Beiträge: 142

15.09.2010 21:25
#5 RE: Schlagwort und eingefügt in den letzten X Tagen Antworten

Servus Holger,

verstehe - der Datumsbereich ist der Sonderwunsch.
Da komm ich bisher immer so einigermaßen brauchbar mit der Eingabe eines "unvollständigen" Datums hin.
Zum Beispiel ...
"2010" für alle Bilder des Jahres 2010
"08.2010" für alle Bilder vom August 2010

Wenn Du die Abfrage zum Datumsbereich fertig hast, stellst Du sie ja bestimmt auch hier rein ...
... man weiß ja nie, was man alles mal so brauchen kann :)

Danke, Gruß und viel Erfolg beim SQL-Basteln :)

Jürgen

Michael Offline



Beiträge: 190

16.09.2010 22:49
#6 RE: Schlagwort und eingefügt in den letzten X Tagen Antworten

Hallo zusammen,

mit der eingebauten Datumssuche und den Angaben "Jahr" oder "Monat.Jahr" bin ich bislang eigentlich auch immer gut hingekommen.

Wenn es nun aber gezielt um einen bestimmten Bereich des Bilddatums geht (wie von Holger gewünscht), lässt sich eine solche Abfrage wiefolgt realisieren:

1
2
3
4
 
select BildID from bild
where BildID in
(select id from bild
where madeyear=$1 and xbild.mademon >=$2 and xbild.mademon <=$3)
 



Übersetzung: Es sollen alle Bilder gefunden werden, die in einem bestimmten Jahr $1 und zwischen Monat $2 und Monat $3 aufgenommen wurden.
Für Bilder aus dem Jahr 2010, die zwischen Mai und August geschossen wurden, wären die einzugebenden Parameter also z.B. $1=2010, $2=5, $3=8.

Falls das genaue Datum (der Tag) von Belang ist, kann man das durch sinngemäßen Einbau des Datenbankfelds madeday zusätzlich berücksichtigen.

Ich hoffe, das hilft in der Sache weiter.

Viele Grüße,
Michael

 Sprung