Genau! Aber das werde ich mit dem concat schon hinbekommen indem man das Feld des Herstellers mit dem Namen verknüpft. Danke!
Code: update products_description inner join products on products.products_id = products_description.products_id inner join manufacturers on products.manfufacturers_id = manufacturers.manufacturers_id set gm_alt_text = CONCAT(manufacturers_name, ': ', products_name); So vielleicht. Vorher Sicherung machen.
Offene Warenkörbe: Code: SELECT cb.customers_basket_date_added as Datum, c.customers_cid as Kundennr, c.customers_firstname as Vorname, c.customers_lastname as Name, p.products_model as Artnr, pd.products_name as Bezeichnung, cb.customers_basket_quantity as Anzahl FROM products as p INNER JOIN ((customers_basket as cb INNER JOIN customers as c ON cb.customers_id = c.customers_id) INNER JOIN products_description as pd ON cb.products_id = pd.products_id) ON p.products_id = cb.products_id WHERE pd.language_id=2 ORDER BY cb.customers_basket_date_added DESC
Hallo, kann mir vielleicht jemand von Euch helfen? Ich komme bei der Erstellung eines SQL-Befehles nicht weiter, welcher den Teaser-Slider für einen bestimmten Hersteller in allen seinen Produkten aktiviert. Ich finde die Tables dazu irgendwie nicht und kann auch keinen Zusammenhang herleiten. Ich wollte so vorgehen: UPDATE slider_assignments SET slider_id = 4 WHERE entity_type = 'product' AND entity_id>0 Denke aber das klappt nicht bzw. nur für Produkte, welche bereits einen Teaser-Slider aktiviert haben. Eventuell muss ich mit der WHERE und FROM Klausel arbeiten um hier die Daten aus den Unterschiedlichen Tabellen zusammenzubekommen. Würde ich freuen, wenn Ihr mir hierbei helfen könntet. Das würde uns viel Arbeit ersparen.
Das installiert den Slider mit der ID 4 in allen Artikeln von Hersteller mit der ID 8: Code: INSERT INTO slider_assignments ( entity_id, slider_id, entity_type ) SELECT products.products_id, "4" AS slider_id, "product" AS entity_type FROM products WHERE products.manufacturers_id=8;
Hey Christian, gigantisch. Vielen Dank!! Ich werde es gleich mal ausprobieren im Testshop. Melde mich dann.
Hi, ich habe nun Deinen Befehl verwendet um im Testshop einen Versuch zu starten. Das klappte auch soweit einwandfrei. Danach habe ich den Befehl in unserem Live-Shop übernommen. Dazu habe ich die SQL-Funktion des Shops verwendet. Das klappte ebenfalls einwandfrei. Nun wolle ich weitere Produkte mit neuen Slidern versehen, aber dabei kam es zu Problemen und der Code wird nicht mehr von der Datenbank ausgeführt. Ich versuchte es dann mit einem anderen Hersteller und dann klappte es einmal wieder ohne Error. Warum kann ich nicht verstehen. Dann habe ich es mehrmals mit unterschiedlichen Herstellern und neuen Slidern versucht, jedoch ohne Erfolg. Ich hänge die Fehlermeldungen der SQL mal an. Was ich mir vorstellen kann ist, dass es mit diesem Befehl hierbei komplett neu eingetragen wird und eventuell bereits vorhandenen Einstellungen des Sliders bei Produkten nicht überschrieben werden können. Macht die UPDATE Funktion vielleicht Sinn? Danke noch mal für Deine Hilfe.
Edit: Ich habe nun mit dem Befehl: DELETE FROM `slider_assignments` WHERE entity_type=product Die Zuordnung aller Slider zu den Produkten gelöscht. Damit lassen sich die Slider wieder völlig neu setzen. Das bestätigt meine Vermutung, dass ein Überschreiben bereits bestehender Zuordnungen nicht möglich ist. Kannst Du den Code eventuell modifizieren, damit ich diesen auch zum Update für bestehende Hersteller nutzen kann? LG
Du hast wahrscheinlich schon Artikel mit Slidern von dem jeweiligen Hersteller in der Tabelle. Die müssten erst gelöscht werden, bevor Du sie neu erstellen kannst.
Richtig. Pro Artikel darf es nur einen Slider geben. Damit löscht du gezielt alle Slider in den Produkten eines Herstellers: Code: DELETE slider_assignments.* FROM products INNER JOIN slider_assignments ON products.products_id = slider_assignments.entity_id WHERE products.manufacturers_id=8;
Super! Nun funktioniert es. Damit kann ich mir eine Menge herleiten. Vielen Dank für Deine qualifizierte Hilfe. LG Manuel
Hi Leute, ich brauche erneut Eure Hilfe. Mit welchem Befehl kann ich für alle Artikel gleichzeitig die Einstellung „Kombinationslieferzeit" in den Einstellungen der Eigenschaften von Artikeln in SQL umschalten/ anschalten? Vielen Dank Euch
Ungetestet, also bitte erst im Testshop und auf jeden Fall eine Datenbank-Sicherung vorher machen. Code: UPDATE `products` SET `use_properties_combis_shipping_time`= 1;
Hallo, habe hier den Befehl gefunden der alle Preise erhöht. Preiserhöhung global für alle Artikel - bezieht sich auf Nettopreis Der Befehl erhöht alle Preise um 5%, kann jedoch abgeändert werden, indem die Zahl hinter *1. geändert wird. PHP: update products set products_price=products_price*1.05; Bezieht sich die Preiserhöhung auch auf die hinterlegten Artikelattribute oder nur auf den Artikel Preis?
Nur auf den Artikelpreis. Du veränderst nur Werte in der Tabelle products. Aber kannst es ja leicht testen: Update products...WHERE PRODUCTS_ID=1 ändert nur products_id 1.
Frage an die SQL-Profis In einem Shop wird für jede NL-Mail auch eine Kopie an den Betreiber gesendet. Die Kopien werden auch in der Tabelle "emails" gespeichert, mit einem [COPY] vor dem ursprünglichen Empfängernamen (in der Spalte "subject") Da das die Tabelle mächtig aufbläht suche ich nach einer Möglichkeit um die Kopien zu löschen. Hat jemand einen SQL-Befehl, der das kann?