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

Wie implementiere ich diese mySQL-Abfrage korrekt in eine PHP-Datei und zeige die Ergebnisse an?

Wann immer Sie Funktionen für Spalten verwenden, müssen Sie ihnen einen Alias ​​zuweisen. Der Grund dafür ist, dass Sie möglicherweise viele Spalten in der Funktion verwenden und MySQL nicht automatisch weiß, welche für die Ausgabe einer einzelnen Spalte verwendet werden soll, und es würde Ihnen einen Spaltennamen generieren, der dem der von Ihnen verwendeten Funktion ähnelt.

Die Lösung, auf die Sie gestoßen sind, ist absolut gültig. Aus Gründen der Lesbarkeit wird jedoch die Verwendung von Aliasnamen und Spaltennamen empfohlen.

Ihre Abfrage sollte also wie folgt lauten:

SELECT 
    SUBSTRING(LEFT(configuration,
            LOCATE('abhol_firma', configuration) - 30),
        LOCATE('treuhand_betrag', configuration) + 22,
        100) as configuration   /* note the alias here */
FROM
    tl_iso_product_collection_item
WHERE
    LOCATE('abhol_firma', configuration) > 0
        AND LOCATE('treuhand_betrag', configuration) > 0
ORDER BY id DESC
LIMIT 1