Darstellungsproblem by UNION

  • Hi Zusammen!

    Ich habe eine Query, die folgendes tut:

    SQL
    SELECT md.idmessdaten AS id,
    md.wert AS wert
    FROM messdaten AS md

    wobei hier wert vom Typ FLOAT(10,4) ist. Und weiters eine 2. Query:

    SQL
    SELECT ae.idarbeitsergebnisse AS id,
    ae.ergebnis AS wert
    FROM arbeitsergebnisse AS ae

    So weit, so gut. Die erste Query liefert z.B. 3.4000 und die zweite "alles richtig". Das Problem beginnt, wenn ich ein UNION der beiden Queries mache. Dann liefert die UNION-Query nämlich 3.400000095367431640625 statt 3.4000. Ich glaub, dass das irgendwie mit dem Casting zu tun haben könnte, aber wie man das Problem lösen könnte, weiss ich nicht so wirklich. Hat jemand Ideen?

    Thanx 4 help.

    *** Make it idiot proof, and someone will build a better idiot. ***

  • obwohl ich keine lösung hab, schlag ich vor, du schreibst dazu, um welche DBMS es sich handelt. Die haben nämlich alle ihre eigenen "Ticks". :)

    Otto: Apes don't read philosophy. - Wanda: Yes they do, Otto, they just don't understand
    Beleidigungen sind Argumente jener, die über keine Argumente verfügen.
    «Signanz braucht keine Worte.» | «Signanz gibts nur im Traum.» 

    Das neue MTB-Projekt (PO, Wiki, Mitschriften, Ausarbeitungen, Folien, ...) ist online
    http://mtb-projekt.at

  • Hab die Lösung gefunden:

    SQL
    SELECT md.idmessdaten AS id,
    CONVERT(md.wert USING latin1) AS wert
    FROM messdaten AS md

    Man muss nur aufpassen, dass man die richtige Codierung nimmt. D.h. das erste SELECT kann nicht latin1 und das andere utf-8 beim gleichen Feld zurückliefern. Aber das schreibt er dann eh hin.

    *** Make it idiot proof, and someone will build a better idiot. ***

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!