Anleitung Hilfreiche SQL-Befehle

Thema wurde von Petra, 28. April 2015 erstellt.

  1. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    33.391
    Danke erhalten:
    10.355
    Danke vergeben:
    1.491
    Hallo Jan,

    bitte entschlüssele einmal Deinen Satz.
    Ich verstehe das gerade so:
    Du möchtest in der Kundengruppe 3 anzeigen lassen, dass die Artikel von Hersteller 1 für die Kundengruppe 10 um 20% günstiger werden.
    Das ergibt aber irgendwie keinen Sinn für mich :)
     
  2. Jan Brodowsky

    Jan Brodowsky Erfahrener Benutzer

    Registriert seit:
    20. Juni 2012
    Beiträge:
    165
    Danke erhalten:
    12
    Danke vergeben:
    75
    also für mich klang das vorhin noch streng logisch und schlüssig ;)
    Bei allen Artikeln eines Herstellers soll ein bestimmter Kundengruppenpreis für eine andere Kundengruppe um 20% reduziert werden.
     
  3. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    33.391
    Danke erhalten:
    10.355
    Danke vergeben:
    1.491
    Ich glaube jetzt komme ich langsam dahinter.... Der Kundengruppenpreis mit der ID 3 ist für die Kundengruppe mit der ID 10, richtig?
     
  4. M. Zitzmann

    M. Zitzmann Erfahrener Benutzer

    Registriert seit:
    3. März 2016
    Beiträge:
    285
    Danke erhalten:
    91
    Danke vergeben:
    27
    Ich habs zuerst auch nicht verstanden...

    ohne Garantie:

    Code:
    UPDATE
        personal_offers_by_customers_status_10, personal_offers_by_customers_status_3
    SET
        personal_offers_by_customers_status_10.personal_offer = personal_offers_by_customers_status_3.personal_offer * 0.8
    WHERE
        personal_offers_by_customers_status_10.price_id = personal_offers_by_customers_status_3.price_id
    Voraussetzung ist natürlich daß die Tabelle personal_offers_by_customers_status_10 bereits vorhanden und gefüllt ist.
    Wenn du eine neue Kundengruppe angelegt hast ist die Tabelle vermutlich noch leer.
    Dann ginge der Befehl anders...
     
  5. Jan Brodowsky

    Jan Brodowsky Erfahrener Benutzer

    Registriert seit:
    20. Juni 2012
    Beiträge:
    165
    Danke erhalten:
    12
    Danke vergeben:
    75
    #465 Jan Brodowsky, 1. Februar 2021
    Zuletzt bearbeitet: 1. Februar 2021
    Ich habe die neue Kundengruppe ID10 aus der Kundengruppe ID3 erstellt (Preise übernommen)
    Und vielen Dank schon mal - ich würde die DB sichern und dann mal testen

    @M. Zitzmann: wie kann ich in den Befehl noch eine Artikelkategorie einbinden? es gibt für die neue Kundengruppe nicht auf alle Artikel den Rabatt
     
  6. Anonymous

    Anonymous Aktives Mitglied

    Registriert seit:
    26. Mai 2011
    Beiträge:
    41
    Danke erhalten:
    1
    Danke vergeben:
    5
    Huhu, hatte das probiert. In jedem Artikel stehen auch die 10% Rabatt drin, aber Sie werden nicht angezeigt bzw. der Artikelpreis bleibt gleich...Was mache ich falsch? :) Herzlichen Dank :)
     
  7. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    19. Juni 2012
    Beiträge:
    4.505
    Danke erhalten:
    990
    Danke vergeben:
    856
    Maximalen Rabatt in der Kundengruppe hochsetzen. Wenn der 0 ist hilft der Befehl nix.
     
  8. Anonymous

    Anonymous Aktives Mitglied

    Registriert seit:
    26. Mai 2011
    Beiträge:
    41
    Danke erhalten:
    1
    Danke vergeben:
    5
    Ah ok. Danke, das schau ich mir heute mal an :)
     
  9. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    18. Juli 2019
    Beiträge:
    289
    Danke erhalten:
    47
    Danke vergeben:
    16
    Ich hätte da auch eine Frage: Könnte man mit SQL eine Liste der URLs der Kategorien erstellen?

    Ich möchte die Navigation umordnen, und müsste danach 301 Umleitungen von den alten URLs auf die neuen erstellen.
    Von Hand wird das sehr schwierig, ich bräuchte eine Liste mit einer ID, und der URL die dazu gehört.
     
  10. Kai Schoelzke

    Kai Schoelzke Beta-Held

    Registriert seit:
    30. März 2016
    Beiträge:
    3.513
    Danke erhalten:
    462
    Danke vergeben:
    177
    Hol dir die Links doch aus der Sitemap, und denke daran wenn du an den Kats rum schraubst das sich auch die URLs der Artikel ändern, sofern du nicht die Kurz URLS aktiviert hast.
     
  11. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    18. Juli 2019
    Beiträge:
    289
    Danke erhalten:
    47
    Danke vergeben:
    16
    Die Sitemap hat nur die URL, ohne Kennzeichen welche Kategorie es ist, also keine ID oder so etwas mit der man nachher die neuen URLs zuordnen könnte.

    Ich muss ja nach der Umstellung die alte zur neuen URL zuordnen damit ich da 301 Weiterleitungen erstellen kann.
    Dazu brauche ich ja eine feste ID oder so etwas.
     
  12. M. Zitzmann

    M. Zitzmann Erfahrener Benutzer

    Registriert seit:
    3. März 2016
    Beiträge:
    285
    Danke erhalten:
    91
    Danke vergeben:
    27
    SELECT gm_url_keywords FROM categories_description WHERE language_id = 2

    Die zugehörige ID ist das Feld categories_id
     
  13. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    18. Juli 2019
    Beiträge:
    289
    Danke erhalten:
    47
    Danke vergeben:
    16
    Das liefert leider nur die "URL Keywords", aber nicht die komplette URL, die Struktur fehlt da.

    Ich habe das jetzt von Hand gemacht, mir über die Sitemap und Excel Tabellen erstellt und die dann von Hand zugeordnet. Trotzdem vielen vielen Dank!
     
  14. ff-webdesigner

    ff-webdesigner Erfahrener Benutzer

    Registriert seit:
    22. Januar 2014
    Beiträge:
    225
    Danke erhalten:
    24
    Danke vergeben:
    29
    hi petra, bitte oben updaten, brauchen sicher einige:

    ALLE INAKTIVEN PRODUKTE IN NEUE KATEGORIE VERSCHIEBEN:

    alle inaktiven produkte anzeigen:
    Code:
    SELECT products_id, products_status FROM products p WHERE p.products_status = 0
    inaktive produkte in neue kategorie verschieben:
    Code:
    UPDATE products JOIN products_to_categories USING (products_id)
    SET products_to_categories.categories_id = XXX
    WHERE products.products_status = 0
    XXX ersetzen durch die entsprechende kategorie, herauszufinden durch klick im gambio admin und dann id aus url entnehmen
    /admin/categories.php?cPath=9

    überprüfen:
    Code:
    SELECT p.products_id, p.products_status, c.categories_id, d.products_name FROM products p JOIN products_to_categories c ON p.products_id = c.products_id JOIN products_description d ON p.products_id = d.products_id WHERE p.products_status = 0
     
  15. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    1. September 2012
    Beiträge:
    2.024
    Danke erhalten:
    339
    Danke vergeben:
    135
    Petra war schon laaaaange nicht mehr hier.
     
  16. Hector

    Hector Erfahrener Benutzer

    Registriert seit:
    9. Januar 2013
    Beiträge:
    184
    Danke erhalten:
    35
    Danke vergeben:
    42
    Hi.

    Etwas schwer zu beschreiben, was ich meine:
    Ich würde gerne herausfinden, welche Eigenschaften welchen Artikeln zugeordnet sind.

    Wenn ich z.B. eine Eigenschaft löschen möchte, kommt eine Meldung, "Achtung: Diese Eigenschaft ist noch in xxx Kombinationen enthalten!". Nur welche Artikel sind das wohl??

    Hat da jemand eine query parat?

    Gruß,
    Marcus
     
  17. Christian Mueller

    Christian Mueller Beta-Held

    Registriert seit:
    4. Juli 2011
    Beiträge:
    3.147
    Danke erhalten:
    643
    Danke vergeben:
    233
    Petra betreibt auch keinen Shop mehr.
     
  18. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    1. September 2012
    Beiträge:
    2.024
    Danke erhalten:
    339
    Danke vergeben:
    135
    Weiss wer, wie ich alle Produkte in einer Kategorie, samt Unterkategorie mit einem Hersteller versehen kann?
    Gebaut habe ich schon
    UPDATE `products` SET `manufacturers_id` = '2'
    WHERE categories_id=xx

    Aber es hängt an der Kategorieangabe z.B. Path=49_133_62

    Danke!
     
  19. barbara

    barbara G-WARD 2014-2020

    Registriert seit:
    14. August 2011
    Beiträge:
    33.391
    Danke erhalten:
    10.355
    Danke vergeben:
    1.491
    Die Kategorie-ID steht nicht in der Tabelle products, da muss man eine Querverbindung zur products_to_categories aufbauen.
    Ich bin da kein Spezi, aber das müsste irgendwie so ähnlich sein:
    UPDATE products p LEFT JOIN products_to_categories ptc ON p.products_id=ptc.products_id
    SET p.manufacturers_id = 2 WHERE ptc.categories_id = xx;
     
  20. Anonymous

    Anonymous Erfahrener Benutzer

    Registriert seit:
    1. September 2012
    Beiträge:
    2.024
    Danke erhalten:
    339
    Danke vergeben:
    135
    Ich habs mir gedacht... :(