Announcement

Collapse
No announcement yet.

100,31 in 100.31 konvertieren

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • 100,31 in 100.31 konvertieren

    Hallo,

    ich lese aus einer bestehenden Datenbank einige Daten aus und speichere sie als *.csv Datei ab (Import/Export).
    Nun sind in der Datenbank alle Zahlen mit Komma z.B. 100,31 (Datentype NUMERIC) abgespeichert. Ich sollte sie aber mit einen Punkt in der csv Datei abspeichern. Gibt es eine Möglichkeit dies mit SQL-Befehlen zu konvertieren?

    Gruß

    Alex Brodbeck

  • #2
    Hallo Alexander,

    versuche es doch mal mit einem Cast (z.B. <b>select cast(kaufpreis as varchar(10)) from table1</b>)

    Tschüß

    Torste

    Comment


    • #3
      Hallo Torsten,

      das mit dem VARCHAR funktioniert. <BR>Ein weiters Problem ist ich muß die errechneten Werte auf zwei Kommastellen runden.<BR>
      Meine SQL Abfrage siht so aus:<P>
      <PRE>
      SELECT
      fi.Nummer,
      ks.Nummer AS Kostenstelle,
      SUM(t.Menge)AS Menge1, /* 147,98 => 147.98 */
      'ltr' AS ME,
      SUM(t.Menge*p.Preis) AS Betrag, /* 192,347 => 192.37 */
      'DEM' AS WKZ,
      p.Preis /* 1,3 => 1.3 */

      FROM
      Tankdaten t,
      Firma fi,
      Fahrzeug f,
      Kostenstelle ks,
      Preis p
      WHERE
      fi.Nummer=10 AND
      t.Zeit BETWEEN "01.07.2001" AND "31.07.2001" AND
      fi.Fi_Key=t.Fi_Key AND
      f.Fi_Key=t.Fi_Key AND
      f.Fz_Key=t.Fz_Key AND
      ks.Fi_Key=f.Fi_Key AND
      ks.Ks_Key=f.Ks_Key AND
      p.Datum=(SELECT MAX(Datum) FROM Preis sp WHERE sp.Datum<=t.Zeit)
      GROUP BY
      fi.Nummer, ks.Nummer, p.Preis
      ORDER BY
      ks.Nummer
      </PRE>

      Wie kann man dies am besten machen?

      Gruß

      Ale

      Comment


      • #4
        Hallo Alex,

        select cast(cast(kaufpreis as numeric(15,1)) as varchar(15)) from table1

        Tschüß

        Torsten

        PS: eventuell ist eine Typumwandlung im Client-Programm sinnvolle

        Comment

        Working...
        X