rechnen mit varchar feldern?

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

  • rechnen mit varchar feldern?

    hallo,

    ich habe eine tabelle, in der steht der gesamtpreis in einem varchar feld. zB "1939,55".

    Gibt es eine Möglickeit damit zu rechnen.

    Also zB alle Artikel zwischen 1000,00 und 2000,00 € Gesamtpreis.

    Oder ist das mit einem Typ varchar Feld nicht möglich ?

    Gruß
    Tim

  • #2
    da du unter Rubrik SQL fragst, nehme ich an, du möchtest eine Abfrage etwa mit BETWEEN ... absetzen .

    Klar gehts, du mußt nur: Komma durch Punkt ersetzen (replace) und in Zahl konvertieren (cast,convert)

    Kommentar


    • #3
      danke so hats funktioniert!

      PHP-Code:
      SELECT IDbID,
      REPLACE (
      gesamtbetrag_preis,
      ',',
      '.'
      ) AS betrag
      FROM it_onlineshop_bestell_history
      HAVING CONVERT
      betragbinary )
      BETWEEN 100.00 AND 2000.00 
      Danke und Gruß Tim

      Kommentar


      • #4
        jetzt stellt sich für mich nur die frage, warum du die felder nicht direkt als zahlenfelder in der DB hast ....
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          Original geschrieben von Abraxax
          jetzt stellt sich für mich nur die frage, warum du die felder nicht direkt als zahlenfelder in der DB hast ....
          vielleich will er nur sein SQL-Server auslasten ...

          Kommentar


          • #6
            Original geschrieben von asp2php
            vielleich will er nur sein SQL-Server auslasten ...
            aaaasoooo.... dann ist natürlich alles in ordung und er geht den richtigen weg ....
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar


            • #7
              Wie kann ich denn zu einem VARCHAR Feld in MSSQL überprüfen, ob sich das Feld in ein FLOAT ändern ließe?

              Ich hab nämlich eine Tabelle, die nicht optimal gepflegt ist und da stehen in einer Spalte sowohl floats als string drinnen, als auch floatfremde zeichen.

              In etwa habe ich mir das so vorgestellt, aber ich es funktioniert so leider nicht

              SELECT (CASE WHEN IS_FLOAT(myField) THEN CONVERT(FLOAT, myField) ELSE 0 END);

              Vielen Dank

              - Flip
              Find Parties?
              Partysuche

              Kommentar


              • #8
                Du kannst nicht den Typ einzelner Felder ändern, sondern nur ganzer Spalten.

                Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                Wie man Fragen richtig stellt

                Kommentar


                • #9
                  Doch das funktioniert, allerdings habe ich jetzt endlich gefunden was ich gesucht habe :-D

                  ISNUMERIC( ) lautet die Lösung

                  Trotzdem vielen Dank!

                  - Flip
                  Find Parties?
                  Partysuche

                  Kommentar


                  • #10
                    Dennoch ist es nur ein Umweg, anstatt es sofort richtig zu machen. Oder fährst Du immer von a über c um nach b zu kommen.
                    Erstell Dir eine Testumgebung, erzeuge dann die Tabelle 1:1, fülle diese mit ein paar Werten und konvertiere dann den Typ des gesamtpreis-Feldes von varchar zu z.B. dezimal (numeric). Anschliessend testen und vergleichen etc. ...

                    Gruß php_fussel

                    Kommentar


                    • #11
                      Ich beame mich immer von a nach b!

                      Aber ich glaube wir reden gerade aneinander vorbei :-D

                      Ich hab nur eine zweite Frage in den Raum geschmissen, weil der Autor des Threads ja jetzt zufrieden ist und sich mein Thema ziemlich darauf bezieht und ich keinen neuen Thread aufmachen wollte!

                      Ich beziehe mich auf eine Wertetabelle, wobei die Werte als Char gespeichert werden. Es könnten allerdings auch numerische Werte enthalten sein, mit denen ich rechnen muss, also muss es char bleiben !

                      - Flip
                      Find Parties?
                      Partysuche

                      Kommentar

                      Lädt...
                      X