Jump to content

nakicam

Members
  • Gesamte Inhalte

    4
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von nakicam

  1. test=# select distinct on (kdnr) kdnr, min(datum), array_to_string(produkte,', ') from (select kdnr, datum, array_agg(produkt) as produkte from nakicam group by 1,2 ) bla group by kdnr, produkte; kdnr |  min  | array_to_string------+------------+-----------------  100 | 1999-01-01 | a01, a02  101 | 1998-12-31 | ww1(2 rows)

    In einem anderen Forum hat jemand eine Lösung für mich gefunden, jedoch in Postgre SQL.. kann das jemand in MySQL umschreiben?

  2. Ja, es ist leider Marke Eigenbau ;-).

     

    Ich habe mir nun Daten hochgeladen und einen ersten Versuch gestartet:

     

    Abfrage:

    siehe screenshot

     

     

    Ausgabe:

    siehe screenshot

     

    Wenn ich diejenigen, die kein MinDatum haben, weil das Bestelldatum warum auch immer "nicht" im CRM erfasst wurde,

    ausschließe und nun aus den restlichen Daten das selbe Abfragekonstrukt wie oben, jedoch mit einbeziehen von MinDatum das Group_Concat ansteuern möchte (das muss doch relativ einfach gehen?) wie würde dies aussehen?

  3. Hallo zusammen

    erstmal vielen Dank für eure Antworten!

     

    Leider habe ich nicht die Entscheidungsmöglichkeit zum Wechsel des CRM sondern soll nur damit vertraut werden um marketingtechnische Analysen betreiben zu können (anhand der Selektion und meiner Statistikumgebung).

     

    Das CRM auf Access 2003 wurde sozusagen eigens programmiert. Es gibt keine wirklichen Updates...

     

    Die obige Abfrage funktioniert so leider auch nicht, dann wird mir nur ein MinDatum angezeigt..

     

    Wie könnte ich denn diese Abfrage mit einem Update auf ein neues Feld "Erstkaufdatum" verknüpfen?


    Und warum klappt die Abfrage :

     

    SELECT KdNr, Produkt,
    GROUP_CONCAT(Produkt SEPARATOR ', ') AS Produkte
    FROM verkauf
    WHERE KdNr = KdNr
    GROUP BY KdNr;

     

    ... manchmal und manchmal spuckt Sie garnichts aus? Ist das ein Bug von HeidiSQL?

  4. Hallo zusammen,
     
    ich habe ein Problem und hoffe hier Rat zu finden. Bin leicht am verzweifeln ...
     
    Wir besitzen ein CRM auf Basis von Access 2003 und ich kann leider kein VBA programmieren um das Problem zu lösen, deshalb dachte ich an eine Möglichkeit mit Hilfe von MySQL, Excell und Co.
     
    Folgender Fall:
     
    Durch meine Abfrage entstehen mehrfache Einträge bezüglich Kundennummer um dem Produkt das er erworben hat.
     
    Tabelle sieht in etwa so aus:
     
    Kdnr          Produkt        bestelltAm
    100             A01                01.01.1999
    100             A02                01.01.1999
    100             B03                 02.02.1999
    101              WW1              31.12.1998
    ....
     
    Ich benötige eine Tabelle die:
     
    - KdNr nur einmal auflistet
    - Erkennt welches das Min Datum jeglicher Käufe eines Kunden ist und "Alle Produkte" die zu diesem Min Datum gefunden werden in ein neues Feld "ErstkaufProdukt" und ErstkaufDatum überführt.
    - Mir würde es schon reichen wenn die Erstkaufprodukte alle als "String" oder der gleichen hinteinander mit Komma getrennt aufgereiht werden und das Min Datum einzeln steht.
     
    Beispiel:
    Kdnr        Produkt                 bestelltAm
    100          A01, A02, B03      01.01.1999
     
    Mir geht es am Ende nicht darum diese Daten in das CRM zurück zu führen, sondern um eine Kundenanalyse zu betreiben.
     
    Kann mir jemand von euch helfen?
     
    Laut Internet gibt es sowas wie eine Group_Concat Funktion in SQL welche vielleicht helfen könnte.
     
    Liebe Grüße

    Den ersten Teil habe ich gelöst, denke ich:

    SELECT KdNr, Produkt,
    GROUP_CONCAT(Produkt SEPARATOR ', ') AS Produkte
    FROM verkauf
    WHERE KdNr = KdNr
    GROUP BY KdNr;

    Wie kriege ich nun Min Datum ermittelt, und lasse wirklich nur die Daten von MinDatum in "Produkte" einfliessen? wink.png
     
×
×
  • Neu erstellen...