Frank (no reg): mysql - zwei Suchkriterien unterschiedlicher Priorität

Beitrag lesen

Hallo, in Abhängigkeit von der Komplexität deiner Abfragekriterien kann man dies auch in einer Abfrage machen, in dem man mittels CASE WHEN THEN ELSE END die Kriterien abarbeitet und entsprechend "Punkte" verteilt, so à la

CASE
 WHEN (KRITERIUM1) THEN 10
 WHEN (KRITERIUM2) THEN 5
 ELSE 0
END

Geschachelt in eine Unterabfrage, brauchst du danach nur noch ein LIMIT 1,1 ORDER BY "dein berechnetes Feld" DESC

BTW .. bei den Datenbanksystemen mit denen ich arbeite ist eine Begrenzung (mit Sortierung) der Ergebnismenge (TOP 1, LIMIT 1,1) einer Aggregation (MIN/MAX) in den meisten Fällen vorzuziehen.

Ciao, Frank