1. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

Anfängerfrage zu MySQL/WordPress

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von flipmode85, 27 Mai 2019.

  1. flipmode85

    flipmode85 Benutzer

    Hallo!

    meine schlauen Bücher helfen mir an dieser Stelle leider nicht weiter, sicherlich stünde die Lösung auf einer der unzähligen Seiten - mir fehlt jedoch der Durchblick.

    Es geht um 4 Tabellen (WordPress Taxonomy) welche zueinander in Verbindung stehen. Drei Tabellen lassen sich durch vorhandene ID's zuordnen, in einer Tabelle jedoch ist der Wert der abzugleichenden Einträge mit einem Präfix "pa_" aubgelegt.

    Meine Lösung dafür ist sicherlich nicht die beste. Nachfolgend ein sqlfiddle welches die Situation inkl. meiner erarbeiteten Abfrage veranschaulicht. Die Lösung über GROUP_CONCAT gefällt mir nicht besonders, am liebsten hätte ich für die Werte welche mit Group_Concat zusammengefasst werden je ein Object mit der ID und dem Namen.

    SQL Fiddle | A tool for easy online testing and sharing of database problems and their solutions.

    Vielleicht kann jemand helfen und mir einen Tipp geben?

    Die Tabelle term_taxonomy und woocommerce_attribute_taxonomies werden über color und pa_color einander zugeordnet. Das hatte ich via Concat gelöst, im sqlfiddle fehlt dies weil ich unsicher bin ob Concat und GROUP_Concat die performance berinträchtigen?
     
  2. akretschmer

    akretschmer Datenbank-Guru

    Dein SQL ist falsch in mehreren Dingen:

    • Du vergleichst Äpfle mir Birnen, bzw. Integer mit Strings, und zwar hier: "ON wct.attribute_id = tm.meta_"
    • Du aggregierst, ohne ausreichend zu gruppieren

    MySQL ist, zumindest beim zweiten Punkt, vermutlich aber auch beim ersten, blind, und liefert Dir statt einer Fehlermeldung ein (vermutlich) falsches Resultat.
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden