2017-05-15 4 views
0

Ich brauche Hilfe:Bestellung von Werten aus dem gleichen Feld

Ich habe die folgende Tabelle.

 P1 P2 P3 P4 P5 P6 
John 1 2 3 4 5 7 
Paul 2 7 5 1 4 3 
Mony 7 6 5 4 3 2 

Ein Name ist ein Abonnent, der sich bereits auf der Webseite registriert hat, und daher ist ein Name ein Feld.

Wenn der suscriptor eingeloggt ist, muss er diese Variablen (P1, P2, P3 usw.) anordnen, und danach klickt er auf die Schaltfläche "Speichern", und diese Werte werden in der Tabelle mysql gespeichert. Bis hier funktioniert es gut.

Das Problem ist, dass ich die Bestellung aus dem suscriptor angeordnet benötigt, wenn er die Seite aktualisiert. Ich habe darüber nachgedacht, "SELECT FROM ORDER BY" zu verwenden, aber dies ist für den Fall, dass Sie einige Felder bestellen möchten. Hier habe ich nur ein Feld, von dem ich diese Werte anordnen möchte.

Ich weiß nicht, ob ich es gut erklärt habe. Ich hoffe es.

Danke für Ihre Hilfe.

+0

Es ist nicht klar, was Sie fragen. Können Sie uns das erwartete Ergebnis zeigen? – GurV

+0

Yep ich verstehe es nicht. Sie können die Daten (Fall & Vereinigungen) deaktivieren und sortieren, aber dann erhalten Sie Name, Label und Wert als Spalten, die Sie nach dem Wert sortieren können, aber dann sind die Labels ungeordnet. Was Sie in der Datenbank versuchen, scheint eine UI-Funktion zu sein. – xQbert

+0

Wenn John beispielsweise die ATRIBUTTES auf diese Weise P1 = 2, P2 = 3, P3 = 1 anordnet (diese Werte werden in der MYSQL-Tabelle gespeichert), wenn er die Webseite aktualisiert, muss diese Reihenfolge beachtet werden. –

Antwort

0

normalisieren die Daten Gewerkschaften mit (Entpivotisierung Daten)

SELECT Label, P 
FROM (Select Name, P1 as P, 'P1' as Label from table union all 
     Select Name, P2 as P, 'P2' as Label from table union all 
     Select Name, P3 as P, 'P3' as Label from table union all 
     Select Name, P4 as P, 'P4' as Label from table union all 
     Select Name, P5 as P, 'P5' as Label from table union all 
     Select name, p6 as P, 'P6' as Label from table) Z 
WHERE Z.Name = 'Paul' 
ORDER BY P 

, die Sie wäre es, wenn nötig

geben
P4 1 
P1 2 
P6 3 
P5 4 
P3 5 
P2 7 

und dann wieder Sie schwenken jedoch auf der Grundlage der Werte könnte .., bestellen Die zurückgegebenen COLUMNS sind irrelevant, wenn Sie bestimmte Felder namentlich in der Ergebnismenge erfassen können. Das macht wirklich keinen Sinn.

Aber alles scheint nichts zu tun, was Sie versuchen zu tun, glaube ich, ist besser geeignet für die Benutzeroberfläche nicht die Datenbank.

+0

In der Tat scheint es, dass es besser ist, wenn ich versuche, dies mit der Benutzeroberfläche zu tun, weil es viele Werte gibt. Vielen Dank. –

+0

@ AlvaroLópezSánchez Falls Sie den Punkt noch nicht verstanden haben, ist dies (fast) wie die Daten gespeichert werden sollten - eine Datenbanktabelle ist keine Tabellenkalkulation. – Strawberry

+0

Vielen Dank für Ihren Rat. –

Verwandte Themen