Mysql
 sql >> Datenbank >  >> RDS >> Mysql

mysql tauscht Elemente mit Zeilennummer aus

Im Grunde kann Ihr Problem also folgendermaßen formuliert werden:

The first product of two adjacent products of type 3 cannot be placed 
in a position which is a multiple of 5.

Erschwerend kommt hinzu, dass es in Ihrer Tabelle keine Reihenfolge gibt und es ohne eine Reihenfolge unmöglich ist, eine konstante "Position" für Ihre Produkte zu definieren. Die Reihenfolge der zurückgegebenen Zeilen für ein SELECT ohne ORDER BY ist nicht angegeben.

Am einfachsten geht das jedenfalls in der Anwendung. Fassen Sie Ihre Ergebnisse als Array zusammen, scannen Sie es, und wenn Sie zwei Produkte finden, die sich nicht an der richtigen Position befinden, mischen Sie sie einfach im Array.