2016-08-09 30 views
-1

Hier ist meine Frage:Tabellennamen ersetzen und drucken Sie alle Farben pro Spalte

mysql>

select DATE_FORMAT(STR_TO_DATE(items.date, '%Y-%m-%d'), '%M %d, %Y') date_new, unit, Descpt, p_cost, add_by, GROUP_CONCAT(color,' = ',qty) as COLOR, SUM(qty) as Total, SUM(qty*(p_cost)) as Ptotal from items where status IN ('1','2') Group By Descpt; 
+---------------+------+------------------------+--------+--------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------+-----------+ 
| date_new  | unit | Descpt     | p_cost | add_by | COLOR                                            | Total | Ptotal | 
+---------------+------+------------------------+--------+--------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------+-----------+ 
| June 16, 2016 | Pcs | #1688N - Big Crate New | 125.00 | Psd | BLUE - W = 200,BLUE - W/O = 400,RED - W/O = 300,RED - W = 500,GREEN - W = 300,GREEN - W/O = 200,YELLOW  - W = 400,YELLOW  - W/O = 582,BLACK - W = 255,BLACK - W/O = 330 | 3467 | 900927.75 | 

Farbwerte als Spalte gedruckt werden. Wie kann ich es durch Select-Anweisung erreichen? angeschlossen ist die benötigte Ausgabe.

enter image description here

Antwort

0

Dies ist nicht die vollständige Antwort, aber ich glaube es dir den Weg zeigen wird ...

Die ideia ist die Farbspalte in den PHP Bereich zu erhalten und ihnen ein paar reguläre Ausdrücke machen die Daten zu erhalten ... danach, den Tisch ziehen, wie Sie wollen ...

$color = "BLUE - W = 200,BLUE - W/O = 400,RED - W/O = 300,RED - W = 500,GREEN - W = 300,GREEN - W/O = 200,YELLOW  - W = 400,YELLOW  - W/O = 582,BLACK - W = 255,BLACK - W/O = 330"; 

if(preg_match_all("/(\w+)\s*\-\s*(\S+)\s*=\s*(\d+)/",$color,$m)) { 
    print_r($m); 
} 
else { 
    print "Regexp failed!\n"; 
} 

Array $ m alle Daten, die Sie von Zeilen und Spalten getrennt benötigen haben.

Beachten Sie, dass der reguläre Ausdruck einige adjustements benötigen kann, wenn die Daten für andere Ergebnisse, zum Beispiel unterscheidet sich, wenn einige Zahlen irgendwo fehlen ...

+0

Sir, ich denke, das ist die Lösung. Aber ich bin ein Neuling in PHP. Kannst du mir helfen, das Skript zu erstellen oder mir einfach den kompletten Scrip zu geben? Ich werde es einfach an meine Bedürfnisse anpassen ... Danke im Voraus – Psd