Ich bin auf der Suche nach einem regulären Ausdruck spalten eine Feldliste aus einer SQL-SELECT-Anweisung zu teilen.PHP Regex eine SQL-Feldliste
Ich habe extrahiert bereits die Feldliste aus dem Rest der Abfrage, so dass ich mit einem String-links, die wie folgt aussehen kann:
field1,field2,field3,CONCAT(field1,field2) AS concatted,IF(field1 = field2,field3,field4) AS logic
ich die logische Ansatz die Zeichenfolge wäre denken an eine aufzuspalten Komma, vorausgesetzt, das Komma erscheint nicht in Klammern, so brauche ich nur den richtigen regulären Ausdruck zu finden, das zu tun ...?
Das Endergebnis von dem, was ich versuche zu erreichen, ist herauszufinden, welche Felder gerade aus der Tabelle ausgewählt werden, und welche aus SQL-Ausdrücken gemacht werden, so dass ich später entscheiden kann, ob sie mit Filtern WHERE oder HAVING-Klauseln.
Sobald ich die Liste der Felder habe, kann ich nach dem Vorhandensein des Schlüsselwortes 'AS' suchen, das, obwohl es nicht perfekt ist, mit der Art arbeiten sollte, wie ich SQL schreibe.
(Bonuspunkte einen anderen Weg für die Annahme, dass zwischen den Feldern differenciates, die nicht Ausdrücke sind aber Aliasing, und Ausdrücke, die nicht aliased sein kann oder sein kann ‚AS‘, ohne aber)
erscheint den Job perfekt, dank zu tun! – Codecraft