Announcement

Collapse
No announcement yet.

Nachkommastellen nach Division abgeschnitten [MSSQL]

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

  • Nachkommastellen nach Division abgeschnitten [MSSQL]

    Hi zusammen,

    in meiner Abfrage dividiere ich die Anzahl "Vendor Item No_" durch 4312. Das Problem ist, dass ich nur einstellige Ergebnisse ohne Nachkommastellen herausbekomme. Da die Ergebnisse jedoch sehr klein werden brauche ich viele Nachkommastellen. Warum werden diese in meiner Abfrage nicht angezeigt?

    Hier meine Abfrage:

    Code:
    Quellcode
    ​select i."Vendor Item No_", count(i."Vendor Item No_")/4312 as Anteil
        from dbo."Grünspar GmbH$Sales Invoice Line" s
        join  dbo."Grünspar GmbH$Sales Invoice Header"  h on s."Document No_" = h."No_"
        LEFT JOIN dbo."Grünspar GmbH$Item" i ON s."No_" = i."No_"
    where s."Posting Date" between '2014-01-09 00:00:00' and '2014-30-09 23:59:59'
    and "Posting Group" like 'HANDEL'
    Group by i."Vendor Item No_"
    BG
    Henrik

  • #2
    Weil du ganze Zahlen(Integer) dividierst. Und bei ganzen Zahlen kommt nun mal eine ganze Zahl (Integer) raus. Kein System ändert einfach mal den Datentyp weil es möglicherweise günstiger ist.
    Erzwinge eine Fließkommadivision dadurch das du entweder Nenner oder Zähler in eine Fließkommazahl änderst. Zum Beispiel indem du die 4312 Konstante in 4312.0 änderst.

    Comment


    • #3
      hi!

      okay super thx. Gibts noch ne andere möglichkeit? also bspw. den zähler ändern, da die 4312 nur nen platzhalter sind für eine andere abfrage um das hier übersichtlicher zu halten...

      Comment


      • #4
        Dann mußt du einen der beiden auf einen Fließkommawert casten (float, double, decimal etc.)

        [HIGHLIGHT=Sql]select cast(meinFeld as Float)/4312[/HIGHLIGHT]

        Comment

        Working...
        X