Hallo ich bin neu hier aber ich lese schon einige Zeit mit…
Ich fange gerade an PHP und SQL zu lernen und möchte die Tabellen auszulesen. Habe gerade dieses Konstrukt siehe unten geschrieben. Jetzt möchte ich aber nicht alles haben, sondern nur die wichtigsten Spalten zum Beispiel Preise, Titel usw. Wie kann ich das besser machen?
SELECT *
FROM oxobject2category
LEFT JOIN (
oxarticles, oxcategories
) ON ( oxarticles.oxid = oxobject2category.oxobjectid )
WHERE (
oxcategories.oxid = oxobject2category.oxcatnid)
da Du ja beides offensichtlich neu erlernst, gleich ein grundsätzlich gut gemeinter Rat.
Bei SQL Statements ist
SELECT *
meistens die schlechteste Wahl. Denn damit gibst Du alles aus.
Wenn Du wie von Dir gewünscht, richtigerweise nur die Felder die du benötigst ausgeben willst, gibst du anstatt *, einfach die Felder an, die Du ausgeben willst und trennst Sie jeweils mit einem Komma.
(Spalte C Zeile 1 suchen in Spalte A) aus Spalte B Zeile 1 gefundene Werte in C und A ersetzen,
das alles mit PHP, wobei die Daten in einer CSV Datei exportiert sind. Es müssen die Daten in der CSV Datei nach der Regel von oben geändert werden.
So stehen die Daten in meiner CSV Datei SQL:
SELECT DISTINCT
oxcategories.oxparentid AS VaterID,
oxcategories.oxtitle AS Kategorie,
oxcategories.oxid AS KinderID FROM oxobject2category LEFT JOIN (oxarticles, oxartextends, oxcategories) ON (oxarticles.oxid = oxobject2category.oxobjectid) and (oxartextends.oxid = oxobject2category.oxobjectid) WHERE (oxcategories.oxid = oxobject2category.oxcatnid)
Ist es für dein Vorhaben wirklich nötig, eine bereits exportierte CSV nachträglich per PHP zu bearbeiten, oder wäre es auch eine Alternative, die Daten bereits per SQL Statement richtig auf zu bereiten und dann fertig als CSV zu exportieren?
Ich habe gerade angefangen PHP und SQL in einer Schulung zu lernen. Da ich selbst seit kurzem einem Oxid Shop aufgebaut habe, der leider noch kein Geld bringt, kann ich mir auch im Moment keine Module kaufen. Was lag also näher als an einem Projekt PHP usw. zu lernen und gleichzeitig noch eigene Probleme zu lösen. Ich möchte ein Export Skript bauen, später auch mit Import und Anbindung. Zurzeit exportiert er alles in eine Datei (Artikel NR, Preise usw.) nur die Unterkategorien sind eben noch nicht in Klartext zugeordnet. Ich möchte alles Exportieren was wichtig ist um zum Beispiel diese CSV für Preisvergleiche zu nehmen. Das kann ich zwar auch jetzt schon, aber ich möchte keine Nacharbeit per Excel. Ich brauche also nur die richtigen QSL um diese drei Spalten richtig anzuzeigen.
Auch eine Lösung per PHP wäre gut, da ich so auch lerne wie man so was macht.
P.s
Aufbearbeitet so, das in allen drei Spalten keine Zahlen mehr sind. Hauptkategorie Kategorie und Underkategorie als Text wie eine übliche CSV Datei von zum Beispiel Affilinet