CSV/SQL.....

Begonnen von clearomizer-seller, 24 Mär 2015, 17:19

« vorheriges - nächstes »
Nach unten

clearomizer-seller

24 Mär 2015, 17:19 Last Edit: 24 Mär 2015, 17:21 by clearomizer-seller
Hallo Community,ich brauche mal wieder eure Hilfe.Und zwar geht es um meinen Shop.
Es gibt wohl jetzt eine Website die speziell Angebote bzw Werbung für E-Zigaretten Shops macht,dafür brauchen die eine CSV URL,keine Ahnung was das ist,kenne das SQL wo man dann eine CSV generieren kann.

Die brauchen von mir diese Infos
In der CSV (Excell) URL sollten die Spalten in der Regel folgende Namen aufweisen, je Spalte:

    Produkttitel
    Produktbeschreibung
    Produktpreis
    Produkt-EAN
    interne Produkt-ID
    Produkthersteller
    Produklink
    Produktbild
    Versandkosten
    Produktverfügbarkeit
    Produktlieferzeit
    Grundpreis (z.B. Grundpreise bei Liquids)

Hat jemand eine Ahnung wie der SQl Coder hierfür aussehem muss bzw wie ich an diese CSV URL komme?

danke im Voraus

Daniel

eleazar

Hier mal eine ziemlich vollständige Abfrage, die auch berücksichtigt, dass ein Artikel mehrere Bilder haben kann. Jeder mag sich das passende raussuchen:


SELECT
p.id_product,
p.active,
pl.name,
GROUP_CONCAT(DISTINCT (cl.name)
SEPARATOR ',') as categories,
p.price,
p.id_tax_rules_group,
p.wholesale_price,
p.reference,
p.supplier_reference,
p.id_supplier,
p.id_manufacturer,
p.ean13,
p.upc,
p.ecotax,
p.weight,
p.quantity,
pl.description_short,
pl.description,
pl.meta_title,
pl.meta_keywords,
pl.meta_description,
pl.link_rewrite,
pl.available_now,
pl.available_later,
p.available_for_order,
p.date_add,
p.show_price,
concat('http://',
ifnull(shop_domain.value, 'domain'),
'/img/p/',
if(CHAR_LENGTH(pi.id_image) >= 5,
concat(SUBSTRING(pi.id_image from - 5 FOR 1),
'/'),
''),
if(CHAR_LENGTH(pi.id_image) >= 4,
concat(SUBSTRING(pi.id_image from - 4 FOR 1),
'/'),
''),
if(CHAR_LENGTH(pi.id_image) >= 3,
concat(SUBSTRING(pi.id_image from - 3 FOR 1),
'/'),
''),
if(CHAR_LENGTH(pi.id_image) >= 2,
concat(SUBSTRING(pi.id_image from - 2 FOR 1),
'/'),
''),
if(CHAR_LENGTH(pi.id_image) >= 1,
concat(SUBSTRING(pi.id_image from - 1 FOR 1),
'/'),
''),
pi.id_image,
'.jpg') as image_url,
p.online_only,
p.condition,
p.id_shop_default
FROM
ps_product p
LEFT JOIN
ps_product_lang pl ON (p.id_product = pl.id_product)
LEFT JOIN
ps_category_product cp ON (p.id_product = cp.id_product)
LEFT JOIN
ps_category_lang cl ON (cp.id_category = cl.id_category)
LEFT JOIN
ps_category c ON (cp.id_category = c.id_category)
LEFT JOIN
ps_product_tag pt ON (p.id_product = pt.id_product)
LEFT JOIN
ps_image pi ON p.id_product = pi.id_product
LEFT JOIN
ps_configuration shop_domain ON shop_domain.name = 'PS_SHOP_DOMAIN'
WHERE
pl.id_lang = (SELECT
id_lang
FROM
ps_lang
WHERE
active = '1'
ORDER BY id_lang ASC
LIMIT 1)
AND cl.id_lang = pl.id_lang
AND p.id_shop_default = (SELECT
id_shop
FROM
ps_shop
WHERE
active = '1'
ORDER BY id_shop ASC
LIMIT 1)
AND c.id_shop_default = p.id_shop_default
GROUP BY p.id_product


Falls die Standardsprache nicht '1' ist oder das Datenbankpräfix von 'ps_' abweicht, muss die Abfrage natürlich angepast werden.
Zur Diskussion hier mehr: https://www.prestashop.com/forums/topic/143083-how-can-i-export-my-products-to-a-csv-file/page-3#entry2048388

Nach oben