Jump to content
xt:Commerce Community Forum

Bei Sortierung der Startpage Produkte = Mysql error:


Jespa

Recommended Posts

Hallo,

erhalte diese Fehlermeldung, beim Versuch, die Anordnung des "Startpage-Products-Plugins" zu ändern. Desweiteren ist der Shop dann nicht mehr zu erreichen.

mysql error: [1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'desc LIMIT 0,16' at line 1] in EXECUTE("SELECT p.products_id FROM xt_products p left JOIN xt_products_permission group_permission ON (group_permission.pid = p.products_id and group_permission.pgroup = 'group_permission_2' ) left JOIN xt_products_permission shop ON (shop.pid = p.products_id and shop.pgroup = 'shop_1' ) LEFT JOIN xt_seo_url su ON (p.products_id = su.link_id and su.link_type='1') WHERE p.products_id != '' and p.products_startpage = '1' and group_permission.permission IS NULL and shop.permission IS NULL and p.products_status = '1' and su.language_code = 'de' ORDER BY name-desc LIMIT 0,16")

Dabei ist es egal, was ich eingebe

price

price-desc

name

name-desc

sort

sort-desc

order

order-desc

date

date-desc

Nur bei rand() erhalte ich keine Fehlermeldung und der Shop ist da weiterhin zu erreichen.

Wo liegt da der Fehler?

MFG

Link to comment
Share on other sites

Hallo,

leider besteht das Problem immernoch, was ist das für eine Fehlermeldung?

MFG

hi,

eigentlich klar ( Syntaxfehler, siehe Zitat weiter unten ):

Die Handbuchschreiber bei xtc wenden sich nur an Insider:

Syntax für "desc" ist falsch und wahrscheinlich muss statt "name" irgendwas in der Art 'products_name' verwendet werden.

Wenn Du es rauskriegts, sags mit bitte. Hab selber i.M. dafür keine Zeit.

Zitat:

ORDER BY einsetzen.

Die Syntax für eine ORDER BY-Anweisung sieht folgendermaßen aus:

SELECT "Spalten_Name"

FROM "Tabellen_Name"

[WHERE "Bedingung"]

ORDER BY "Spalten_Name" [ASC, DESC]

Das Symbol [] bedeutet, dass die WHERE-Anweisung optional ist. Ist jedoch eine WHERE-Klausel vorhanden, steht sie vor der ORDER BY-Klausel. ASC bedeutet, dass die Ergebnisse in aufsteigender Reihenfolge angezeigt werden, DESC, dass sie in absteigender Reihenfolge erscheinen. Findet sich keine diesbezügliche Angabe, wird die Voreinstellung ASC verwendet.

Es besteht die Möglichkeit, nach mehr als einer Spalte zu sortieren. In diesem Fall sieht die ORDER BY-Klausel wie folgt aus:

ORDER BY "Spalten_Name1" [ASC, DESC], "Spalten_Name2" [ASC, DESC]

Wenn wir beispielsweise für beide Spalten eine aufsteigende Sortierung wählen, erfolgt die Ausgabe in aufsteigender Reihenfolge gemäß Spalte 1. Liegt eine Verknüpfung für den Wert von Spalte 1 vor, erfolgt die Sortierung in aufsteigender Reihenfolge nach Spalte 2.

So könnten wir zum Beispiel den Inhalt der Tabelle Store_Information nach Euro-Beträgen in absteigender Reihenfolge sortieren:

Tabelle Store_Information

store_name Sales Date

Los Angeles 1500€ 05.Jan.1999

San Diego 250€ 07.Jan.1999

San Francisco 300€ 08.Jan.1999

Boston 700€ 08.Jan.1999

geben wir ein:

SELECT store_name, Sales, Date

FROM Store_Information

ORDER BY Sales DESC

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...