Problem beim Rechnen mit MySql

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem beim Rechnen mit MySql

    Hallo zusammen,

    ich habe folgendes Problem bei meinem SQL Statement:

    ich importiere mit einem Script eine .csv Datei in eine MySql Datenbank - das klappt auch bis auf die Kommastellen super. Die Werte in der csv Datei stehen dort mit Komma und 2 Nachkommastellen. Egal welchen Datentypen ich in der Datenbank für die entsprechenenden felder Angebe - ich bekomme immer INT Zahlen ausgegeben - ohne Komma!?

    Das wäre so das eine Problem... das andere... ist ein SQL Statement:

    Da ich "faul" bin und mir gewisse Sachen einfach ersparen möchte, sind in den importierten Datensätze enthalten, die gesondert ausgewertet werden sollen. Ich dachte an eine zweite Abfrage wo nur nach diesen Datensätzen ausgewertet wird. Klappt soweit auch ganz gut. Es werden mir genau diese drei gewünschten datensätze angezeigt.

    Nur jetzt muss ich noch zwei von denen addieren - also einen von machen, dass ich zwei am Ende insgesamt übrig habe.

    Ich hoffe das war/ist verständlich...?

    Pls help me - ich steh auf´n Schlauch

    nukleuz

  • #2
    warum machst du die db-zeile in der die kommazahl drin stehen soll nicht als DOUBLE format? das habe ich bei mir so, weil ich mit zahlen multipliziere und dividiere und prozent rauskommen
    anstatt komma würde ich aber nen punkt machen
    selfmade-webdesign
    webdesign leipzig

    Kommentar


    • #3
      wegen dem add, schau mal oben im php handbuch nach bcadd
      selfmade-webdesign
      webdesign leipzig

      Kommentar


      • #4
        Hallo,

        warum machst du die db-zeile in der die kommazahl drin stehen soll nicht als DOUBLE format? das habe ich bei mir so, weil ich mit zahlen multipliziere und dividiere und prozent rauskommen
        ich habe alles versucht an Datentypen zu vergeben, doch durch den Import der Daten aus der Csv Datei erhalte ich wahrscheinlich durch das Komma nicht das gewünschte Ergebnis.

        wegen dem add, schau mal oben im php handbuch nach bcadd
        ich dachtedie Berechnung sogar schon in einem SQL Statement machen zu können?!

        besten Dank

        nukleuz

        Kommentar


        • #5
          wie sind denn deine tabelle aus in der die zeile mit den komma stellen kommen soll? so?
          PHP-Code:
          CREATE TABLE `table` (
            `
          siteidint(10NOT NULL auto_increment,
            `
          namevarchar(50NOT NULL default '',
            `
          prozentdouble NOT NULL default '0'#<---sieht das so aus?
            
          PRIMARY KEY  (`siteid`)
          TYPE=MyISAM AUTO_INCREMENT=25 ;

          -- 
          -- 
          Daten für Tabelle `table`
          -- 

          INSERT INTO `
          -- 
          -- Daten für Tabelle 
          `table`
          -- 
          INSERT INTO 
          `table` VALUES (1, 'koernchen', 738, 'm', 
          'bilder/11-005/mqesOMjMfG1378.jpg', 0, '8.73', ......);
          -- --------------------------------------------------------
          // 8.73 ist die kommazahl 
          hm wegen deiner berechnung, da wüsste ich jetzt grad nicht weiter, hab das so noch nicht gemacht
          selfmade-webdesign
          webdesign leipzig

          Kommentar


          • #6
            hi,

            der default wert der spalten bei denen ich gerne das komm hätte sind leer ...


            zum SQL Statement - ich poste es mal:



            nukleuz
            PHP-Code:
            $sql "SELECT
                            Agentur,
                            Name,
                            Umsatz1,
                            Umsatz2,
                            ProzentEigen
                        FROM
                            csv
                        WHERE
                            Name
                        LIKE '%Mitarbeiter%'"

            Wenn ich diesen SQL Befehl ausführe, bekomme ich zwar diesen einen Mitarbeiter, der aber mit zwei verschiedenen ids immer in dieser Auswertung sein wird, angezeigt. Diese Werte möchte ich gerne zusammenfassen, so dass nur er nur einmal auftaucht.

            Füge ich dem SQL Befehl eine Aggregatfunktion Sum hinzu, so bekomme ich eine Fehlermeldung wie diese:

            PHP-Code:
            Mixing of GROUP columns is ilegeal... 
            nukleuz
            Zuletzt geändert von ; 17.04.2006, 12:04.

            Kommentar


            • #7
              warum hat bei dir eine person zwei ids? das versteh ich nicht so recht
              du hast also einen person die daten unter der id1 hat und daten unter der id2 und die daten willst du zusammenfassen von der person? oder versteh ich das falsch?
              wie sind denn die zeile aus aus der csv datei?
              selfmade-webdesign
              webdesign leipzig

              Kommentar


              • #8
                hast du es mal mit JOIN versucht?
                so wie das aussieht versucht du ja zwei datensätze zu einer person zuzuordnen, vielleicht hilft dir das
                selfmade-webdesign
                webdesign leipzig

                Kommentar


                • #9
                  hi,

                  warum und wieso? das hat schon die richtigkeit so - doch für die auswertung ist es mir wichtig diese beiden datensätze zu einem zu machen.

                  Ja, du verstehst das richtig!

                  Kommentar


                  • #10
                    dann schau mal nach join, das sollte helfen, link ist oben
                    selfmade-webdesign
                    webdesign leipzig

                    Kommentar


                    • #11
                      das bringt mich auch nicht wirklich weiter - mir fehlen die Ansätze für diese Umsetzung des Problems.

                      Kann wer helfen...?

                      Kommentar


                      • #12
                        das sollte dir aber helfen zu verstehen schau mal hier
                        etwas weiter unten stehen sehr gute beispiele, einfach mal studieren
                        selfmade-webdesign
                        webdesign leipzig

                        Kommentar


                        • #13
                          in welchem format sind die kommazahlen?

                          5,98 ??

                          ich hatte mal probs damit und nachdem ich alles auf

                          5.98

                          geändert hatte gings prima..
                          2 meiner pages:

                          Kommentar


                          • #14
                            Hi,

                            die Zahlen sind mit Komma getrennt (8,33).

                            habe schon einiges versucht die Zahlen mit Punkt zu formatieren...

                            Wie gesagt - die Daten kommen aus einer .csv Datei und werden in MySql importiert.

                            Gruß

                            nukleuz

                            Kommentar


                            • #15
                              und hat das formatieren nicht geklappt oder das hochladen der korrekt mit punkt formatiereten zahlen?
                              2 meiner pages:

                              Kommentar

                              Lädt...
                              X