Hallo!
Ich habe zwei Tabellen:
Tabelle Photos:
Und eine Tabelle photoRelevance:
In Tabelle 1 werden de hochgeladenen Fotos eingetragen, in Tabelle 2 wird eingetragen, welches Foto heruntergeladen wurde, nachdem nach besagtem Tag gesucht wurde.
Tabelle 2, diente mir bis jetzt nur zur eigenen Übersicht, nach welchen Tags am häufigsten gesucht wird und welche Suchergebnisse (Fotos) zum jeweiligen Tag am beliebtesten sind.
Nun möchte ich aber zur Verbesserung der Suchergebnisse, die Suchergebnisse nach der errechneten Relevanz sortieren lassen.
Das heißt in dem Moment wo beim Suchvorgang die Bilder mittels
abgefragt werden müsste eine zweite Abfrage stattfinden, die in Tabelle "photoRelevance" Spalte "photoTag" die Häufigkeit der gleichen Ergebnisse auslest, das sollte irgendwie so gehn:
und die Ergebnisse von der Such-Abfrage danach sortiert.
Also ganz kurz zusammengefasst:
Je öfter ein Bild, wenn z.B. nach dem Tag "Haus" gesucht wurde, heruntergeldane wurde, desto weiter oben soll es bei den Suchergebnissen sein.
Ich habe zwei Tabellen:
Tabelle Photos:
Code:
photoID | photoTags | photoFile ------------------------------------- 1 | tag1,tag2,tag3 | Foto-URL 2 | tag1,tag2,tag3 | Foto-URL 3 | tag1,tag2,tag3 | Foto-URL 4 | tag1,tag2,tag3 | Foto-URL
Code:
rID | photoTag | photoID ------------------------- 1 | tag | 1 2 | tag | 2 3 | tag | 5 4 | tag | 7
Tabelle 2, diente mir bis jetzt nur zur eigenen Übersicht, nach welchen Tags am häufigsten gesucht wird und welche Suchergebnisse (Fotos) zum jeweiligen Tag am beliebtesten sind.
Nun möchte ich aber zur Verbesserung der Suchergebnisse, die Suchergebnisse nach der errechneten Relevanz sortieren lassen.
Das heißt in dem Moment wo beim Suchvorgang die Bilder mittels
Code:
SELECT * FROM photos WHERE FIND_IN_SET(' . $tag . ', photoTags)
Code:
SELECT COUNT(A), A, B FROM Tabelle GROUP BY A
Also ganz kurz zusammengefasst:
Je öfter ein Bild, wenn z.B. nach dem Tag "Haus" gesucht wurde, heruntergeldane wurde, desto weiter oben soll es bei den Suchergebnissen sein.
Kommentar