Kasimir61
Grünschnabel
Hallo,
zuerst einmal ein frohes neues nachträglich!
Folgendes Problem habe ich grad auf dem Tisch und komme nicht weiter.
Ich habe eine MySQL Tabelle in der ich verschiedene Avatar Bildchen speichere. Pro Datensatz können es immer bis zu 10 Stück sein.
Nun möchte ich eine Abfrage gestalten, in der ich nachsehe -
welche Bilder neu sind. Diese möchte ich dann auf der Seite anzeigen.
Die Tabelle heißt avatar_item
und enthält neben meinen gewünschten Daten verschiedene jetzt eher unwichtige Daten.
Ich kann die Einträge vorab ausfiltern, damit ich nicht alle Einträge durchsuchen muss. Das kann ich am
Feld type erkennen.
Dort steht dann avatar drin, wenns ein Eintrag für einen Avatar ist.
Der Datensatz enthält weiter einen datetime Eintrag
modified
der auch bei der Erst Erstellung des Datensatzes das gleiche Datum enthält. Später dann, wird der Datum und Zeitstempel dann bei einer Bearbeitung geändert. Da die Bearbeitung nach dem Ersteintrag nur statt findet, wenn ein weiterer Avatar hinzukommt, ist das Feld
modified für mich das ausschlaggebende !
Der Inhalt des Feldes sieht dann so aus 2011-01-10 23:51:45
Nun möchte ich erreichen, das alle Datensätze durchsucht werden, die Avatare enthalten. Jeder Datensatz kann wie gesagt 10 Avatare enthalten. Wichtig bei der Suche ist für mich immer der letzte Eintrag, der einen Avatar enthält.
Die Daten sind alle in einem Text Feld gespeichert, das
elements heißt.
Der Inhalt dieses Feldes sieht folgendermaßen aus :
Zum Beispiel wäre das hier Avatar10 von einem imaginären Datensatz, von denen mehrere Datensätze gespeichert sein können.
Nun die Frage :
Wie muss eine Abfrage aussehen, die folgendes Ergebnis hat.
1.) Durchsuche alle Datensätze dieser Tabelle nach Datensätzen, die ein Avatar sind.
2.) Lese in allen Datensätzen nach, wann der Datensatz das letzte mal aktualisiert wurde.
3.) Suche die 10 Datensätze heraus, die am aktuellsten sind.
4.) Gebe mir von den aktuellsten 10 Datensätzen den jeweils letzten eingetragenen Avatar aus, in form des Bilderlinks.
5.) gebe mir den Inhalt des Feldes alias ( ist ein Feld aus dem Datensatz-ist also in jedem Datensatz ein Feld wie datetime.) aus, in Form von Text.
Wenn zum Beispiel in einem Datensatz keiner von 10 möglichen Avatare enthalten sind, dann bleiben die Inhalte leer. Also im XML Eintrag steht dann nur der Datensatz drin, der zuletzt eingetragen ist.
Beispiel, wenn Avatar10 nicht existiert, dann ist der letzte Avatar dann Avatar9 oder eben bis runter zu Avatar 1. Eventuell müsste man noch berücksichtigen, wenn man den Datensatz speichert und aus irgend einem Grund hat der User vergessen, ein Bild hochzuladen - das man dann so verkehrt, ist der Datensatz aktuell und trifft zu - aber es ist kein Avatar gespeichert worden, dann vergiss diesen Datensatz.
Das ist im wesentlichen, was ich nicht hinbekomme...
Gibt es jemanden unter euch, der mir das mal näher erklären kann, wie ich das realisieren könnte ****
Vielen Dank für eure möglichen Antworten und Hilfestellungen im voraus.
Liebe Grüße
Kasi
zuerst einmal ein frohes neues nachträglich!
Folgendes Problem habe ich grad auf dem Tisch und komme nicht weiter.
Ich habe eine MySQL Tabelle in der ich verschiedene Avatar Bildchen speichere. Pro Datensatz können es immer bis zu 10 Stück sein.
Nun möchte ich eine Abfrage gestalten, in der ich nachsehe -
welche Bilder neu sind. Diese möchte ich dann auf der Seite anzeigen.
Die Tabelle heißt avatar_item
und enthält neben meinen gewünschten Daten verschiedene jetzt eher unwichtige Daten.
Ich kann die Einträge vorab ausfiltern, damit ich nicht alle Einträge durchsuchen muss. Das kann ich am
Feld type erkennen.
Dort steht dann avatar drin, wenns ein Eintrag für einen Avatar ist.
Der Datensatz enthält weiter einen datetime Eintrag
modified
der auch bei der Erst Erstellung des Datensatzes das gleiche Datum enthält. Später dann, wird der Datum und Zeitstempel dann bei einer Bearbeitung geändert. Da die Bearbeitung nach dem Ersteintrag nur statt findet, wenn ein weiterer Avatar hinzukommt, ist das Feld
modified für mich das ausschlaggebende !
Der Inhalt des Feldes sieht dann so aus 2011-01-10 23:51:45
Nun möchte ich erreichen, das alle Datensätze durchsucht werden, die Avatare enthalten. Jeder Datensatz kann wie gesagt 10 Avatare enthalten. Wichtig bei der Suche ist für mich immer der letzte Eintrag, der einen Avatar enthält.
Die Daten sind alle in einem Text Feld gespeichert, das
elements heißt.
Der Inhalt dieses Feldes sieht folgendermaßen aus :
Code:
<?xml version="1.0" encoding="utf-8"?>
<elements>
<text identifier="12e3333e-8a91-466d-9b1a-d4757a2d4f83">
<value><![CDATA[Comic Jumper - Avatar Arwards]]></value>
</text>
<image identifier="bfc5f460-d297-43b6-bf49-ffeb8a247313">
<file><![CDATA[images/stories/Avatare/comic_jumper_cover.jpg]]></file>
<title/>
<link/>
<target/>
<rel/>
<lightbox_image/>
<width><![CDATA[100]]></width>
<height><![CDATA[136]]></height>
</image>
<select identifier="c6af2e74-f898-4a89-8c6c-bf55997ce7ec">
<option><![CDATA[2k-games]]></option>
</select>
<textarea identifier="eb198cd3-af9b-4ac5-a80c-151d65add04b">
<value><![CDATA[<p>Nach der Einstellung seiner eigenen Comic-Reihe wird Captain Smiley von Twisted Pixel Games gekauft und als Aushilfs-Superheld eingesetzt, der in andere Comics springt und dort alle möglichen Probleme löst. <b>Comic Jumper</b> ist die neueste Schöpfung des Teams hinter den preisgekrönten Spielen <b>Splosion Man</b> und <b>The Maw</b>.</p>]]></value>
</textarea>
<text identifier="63e16eef-8628-4756-b069-54c1b9fc0684">
<value><![CDATA[Avatar1]]></value>
</text>
<text identifier="8372a9f7-0794-4350-9b21-e09aad6bbfdb">
<value><![CDATA[Das ist Avatar 1, den bekommt man für..]]></value>
</text>
<image identifier="a2606f3d-baf8-4310-b603-6145d398c5cb">
<file><![CDATA[images/stories/Avatare/Aqua_aw_1.jpg]]></file>
<title/>
<link/>
<target/>
<rel/>
<lightbox_image/>
<width><![CDATA[100]]></width>
<height><![CDATA[100]]></height>
</image>
<text identifier="6ad3d31a-d670-41db-bc4e-93b4736ecfa4">
<value><![CDATA[Avatar2]]></value>
</text>
<text identifier="b2d20b43-9ba7-4431-8a34-8fd8841a4ebf">
<value><![CDATA[Das ist Avatar 2, den bekommt man für..]]></value>
</text>
<image identifier="9d1f5240-d0d8-47d3-b59e-a724e2b538a7">
<file><![CDATA[images/stories/Avatare/Aqua_aw_3.jpg]]></file>
<title/>
<link/>
<target/>
<rel/>
<lightbox_image/>
<width><![CDATA[100]]></width>
<height><![CDATA[100]]></height>
</image>
<text identifier="dacd286f-d15b-473a-91de-77f4e032b859">
<value><![CDATA[Avatar3]]></value>
</text>
<text identifier="9b5604cc-e4d2-4902-887b-e29c2d4508fd">
<value><![CDATA[Das ist Avatar 3, den bekommt man für..]]></value>
</text>
<image identifier="65ee7e54-a8ea-4191-8e26-07e7961c305f">
<file><![CDATA[images/stories/Avatare/alien_breed_2_aw_1.jpg]]></file>
<title/>
<link/>
<target/>
<rel/>
<lightbox_image/>
<width><![CDATA[100]]></width>
<height><![CDATA[100]]></height>
</image>
<text identifier="0bdb1ae5-0640-4c7e-85ba-0046bf76b1f9">
<value><![CDATA[Avatar4]]></value>
</text>
<text identifier="fa613050-43be-4da6-b63c-f09cc649cab1">
<value><![CDATA[Das ist Avatar 4 den bekommt man für..]]></value>
</text>
<image identifier="b9433253-f5eb-4fca-ad1c-dceaa71f3229">
<file><![CDATA[images/stories/Avatare/alien_breed_2_aw_2.jpg]]></file>
<title/>
<link/>
<target/>
<rel/>
<lightbox_image/>
<width><![CDATA[100]]></width>
<height><![CDATA[100]]></height>
</image>
<text identifier="b8edb888-d369-4281-abf4-b81997a2e2f2">
<value><![CDATA[Avatar5]]></value>
</text>
<text identifier="86d0e4cd-9be5-4f9b-861b-81aadd1459cb">
<value><![CDATA[Das ist Avatar5, den bekommt man für..]]></value>
</text>
<image identifier="d847fa8c-2d11-4440-b55c-927b1e3076f4">
<file><![CDATA[images/stories/Avatare/alien_breed_2_aw_3.jpg]]></file>
<title/>
<link/>
<target/>
<rel/>
<lightbox_image/>
<width><![CDATA[100]]></width>
<height><![CDATA[100]]></height>
</image>
<text identifier="43682832-3be6-4883-9e5e-2172b5813e14">
<value><![CDATA[Avatar6]]></value>
</text>
<text identifier="47eac9ac-51c7-420b-88b3-7e657f0ae00c">
<value><![CDATA[Das ist Avatar 6, den bekommt man für..]]></value>
</text>
<image identifier="bfdd2c25-87e8-4884-b2c9-9c9cc265927c">
<file><![CDATA[images/stories/Avatare/comic_jumper_aw_1.jpg]]></file>
<title/>
<link/>
<target/>
<rel/>
<lightbox_image/>
<width><![CDATA[100]]></width>
<height><![CDATA[100]]></height>
</image>
<text identifier="30fad788-a13e-47f3-8a3a-ad3f2b7f570c">
<value><![CDATA[Avatar7]]></value>
</text>
<text identifier="c1aa8713-13fb-4701-80ce-0ceec0a9e333">
<value><![CDATA[Das ist Avatar 7, den bekommt man für..]]></value>
</text>
<image identifier="73e72ec7-8fbb-47c6-a217-9dec5eed06e3">
<file><![CDATA[images/stories/Avatare/comic_jumper_aw_2.jpg]]></file>
<title/>
<link/>
<target/>
<rel/>
<lightbox_image/>
<width><![CDATA[100]]></width>
<height><![CDATA[100]]></height>
</image>
<text identifier="934211f8-218a-45dc-b08e-2a100e46f436">
<value><![CDATA[Avatar8]]></value>
</text>
<text identifier="0eca7438-e593-4243-9265-9587e1778c55">
<value><![CDATA[Das ist Avatar82, den bekommt man für..]]></value>
</text>
<image identifier="392cc880-1be7-45d0-bee0-073d011b2494">
<file><![CDATA[images/stories/Avatare/comic_jumper_aw_3.jpg]]></file>
<title/>
<link/>
<target/>
<rel/>
<lightbox_image/>
<width><![CDATA[100]]></width>
<height><![CDATA[100]]></height>
</image>
<text identifier="0e49f6db-64f3-468e-8478-890a2cdc90ae">
<value><![CDATA[Avatar9]]></value>
</text>
<text identifier="a226ca36-9a3c-4dbb-8796-6907b0c50b6a">
<value><![CDATA[Das ist Avatar 9, den bekommt man für..]]></value>
</text>
<image identifier="de06f985-eb75-4b9c-98bf-641c10686b55">
<file><![CDATA[images/stories/Avatare/costume_quest_aw_1.jpg]]></file>
<title/>
<link/>
<target/>
<rel/>
<lightbox_image/>
<width><![CDATA[100]]></width>
<height><![CDATA[100]]></height>
</image>
<text identifier="5242a913-f834-4ac2-9584-ad02c603d052">
<value><![CDATA[Avatar10]]></value>
</text>
<text identifier="a578e92f-1d0f-4063-827c-db1bf9602fda">
<value><![CDATA[Das ist Avatar 10, den bekommt man für..]]></value>
</text>
<image identifier="09d23a30-577b-4c94-9038-e2702db5cad0">
<file><![CDATA[images/stories/Avatare/costume_quest_aw_2.jpg]]></file>
<title/>
<link/>
<target/>
<rel/>
<lightbox_image/>
<width><![CDATA[100]]></width>
<height><![CDATA[100]]></height>
</image>
<link identifier="9abba42f-58d7-4eba-8237-4d0bf7feb0a0">
<value><![CDATA[http://domain.com/]]></value>
<text><![CDATA[Mitspielersuche]]></text>
<target><![CDATA[1]]></target>
<custom_title><![CDATA[Mitspieler Suche]]></custom_title>
<rel/>
</link>
<text identifier="207c40eb-485a-47c5-8940-7568331f18c0">
<value><![CDATA[Voraussichtlich 3 Auszeichnungen]]></value>
</text>
<link identifier="1afb3554-4fda-4b16-a1d0-931c952c4ebb">
<value><![CDATA[http://domain.com/board/viewforum.php?f=16]]></value>
<text><![CDATA[Finde hilfreiche Tips in unserem Forum]]></text>
<target/>
<custom_title><![CDATA[Hilfreiche Tips]]></custom_title>
<rel/>
</link>
<text identifier="d478a841-1e41-4d64-85f3-6268fd666d21">
<value><![CDATA[2 Stunden]]></value>
</text>
<text identifier="43d7e6d9-2068-4118-84e8-578c9450f0cc">
<value><![CDATA[Einfach]]></value>
</text>
<text identifier="c8bf483d-83af-4530-84df-e7a8dcdd944f">
<value><![CDATA[800 MSP]]></value>
</text>
<link identifier="50d254f2-d133-4114-8534-f3b0abca71e8">
<value><![CDATA[http://domain.comu]]></value>
<text/>
<target/>
<custom_title/>
<rel/>
</link>
<text identifier="5358a13d-2d80-4c47-aef8-14b36b0ace14">
<value><![CDATA[Henry Maske]]></value>
</text>
<socialbookmarks identifier="f03e59a0-c204-4c70-a363-7c067627dea0">
<value><![CDATA[1]]></value>
</socialbookmarks>
<rating identifier="60c03c52-56d3-42c6-82c4-f68ada98c429">
<votes/>
<value/>
</rating>
<relateditems identifier="74acc9a8-73a9-471f-8b34-05d09eb36580"/>
<checkbox identifier="00d7b336-d8f2-4d90-9ab0-e431705a481d">
<option><![CDATA[img-srcimagesstoriessystemexbox360gif]]></option>
</checkbox>
<checkbox identifier="00e2574b-9e73-43f6-a04c-1fbe36979449"/>
<facebookilike identifier="e0ef2447-9668-4efc-b9fe-c3f7f2d1cce6">
<value><![CDATA[1]]></value>
</facebookilike>
</elements>
Zum Beispiel wäre das hier Avatar10 von einem imaginären Datensatz, von denen mehrere Datensätze gespeichert sein können.
Code:
<text identifier="5242a913-f834-4ac2-9584-ad02c603d052">
<value><![CDATA[Avatar10]]></value>
</text>
<text identifier="a578e92f-1d0f-4063-827c-db1bf9602fda">
<value><![CDATA[Das ist Avatar 10, den bekommt man für..]]></value>
</text>
<image identifier="09d23a30-577b-4c94-9038-e2702db5cad0">
<file><![CDATA[images/stories/Avatare/costume_quest_aw_2.jpg]]></file>
Nun die Frage :
Wie muss eine Abfrage aussehen, die folgendes Ergebnis hat.
1.) Durchsuche alle Datensätze dieser Tabelle nach Datensätzen, die ein Avatar sind.
2.) Lese in allen Datensätzen nach, wann der Datensatz das letzte mal aktualisiert wurde.
3.) Suche die 10 Datensätze heraus, die am aktuellsten sind.
4.) Gebe mir von den aktuellsten 10 Datensätzen den jeweils letzten eingetragenen Avatar aus, in form des Bilderlinks.
5.) gebe mir den Inhalt des Feldes alias ( ist ein Feld aus dem Datensatz-ist also in jedem Datensatz ein Feld wie datetime.) aus, in Form von Text.
Wenn zum Beispiel in einem Datensatz keiner von 10 möglichen Avatare enthalten sind, dann bleiben die Inhalte leer. Also im XML Eintrag steht dann nur der Datensatz drin, der zuletzt eingetragen ist.
Beispiel, wenn Avatar10 nicht existiert, dann ist der letzte Avatar dann Avatar9 oder eben bis runter zu Avatar 1. Eventuell müsste man noch berücksichtigen, wenn man den Datensatz speichert und aus irgend einem Grund hat der User vergessen, ein Bild hochzuladen - das man dann so verkehrt, ist der Datensatz aktuell und trifft zu - aber es ist kein Avatar gespeichert worden, dann vergiss diesen Datensatz.
Das ist im wesentlichen, was ich nicht hinbekomme...
Gibt es jemanden unter euch, der mir das mal näher erklären kann, wie ich das realisieren könnte ****
Vielen Dank für eure möglichen Antworten und Hilfestellungen im voraus.
Liebe Grüße
Kasi