Eliminieren von Dezimalstellen nur aus ganzen Zahlen

Kay

Ich habe eine Spalte mit einer Reihe von Zahlen.

row1: 3.4
row2: 4.00
row3: 5.23
row4: 2.0
row5: 0.00
row6: 000

Ich möchte das Endergebnis sein

row1: 3.4
row2: 4
row3: 5.23
row4: 2
row5: 0
row6: 0

Ich möchte grundsätzlich Dezimalstellen entfernen, wenn es sich um eine ganze Zahl oder 0 handelt.

Alex Poole

Eine einfache Methode, vorausgesetzt, sie stellen alle gültige Zahlen dar, besteht darin, sie von Zeichenfolgen in Zahlen und wieder zurück umzuwandeln:

with t (id, str) as (
            select 1, '3.4' from dual
  union all select 2, '4.00' from dual
  union all select 3, '5.23' from dual
  union all select 4, '2.0' from dual
  union all select 5, '0.00' from dual
  union all select 6, '000' from dual
)
select id, str, to_char(to_number(str)) as result
from t;

        ID STR  RESULT                                  
---------- ---- ----------------------------------------
         1 3.4  3.4                                     
         2 4.00 4                                       
         3 5.23 5.23                                    
         4 2.0  2                                       
         5 0.00 0                                       
         6 000  0                                       

Das zeigt einen Anfangswert von 0.1als gerecht .1; Wenn Sie in diesem Fall die führende Null beibehalten möchten, können Sie Folgendes verwenden:

rtrim(to_char(to_number(str), 'FM999999990.99999'), '.')

Bereitstellung einer Formatmaske mit genügend führenden und nachfolgenden 9Platzhaltern für Ihre Daten:

with t (id, str) as (
            select 1, '3.4' from dual
  union all select 2, '4.00' from dual
  union all select 3, '5.23' from dual
  union all select 4, '2.0' from dual
  union all select 5, '0.00' from dual
  union all select 6, '000' from dual
  union all select 7, '01' from dual
  union all select 8, '00.10' from dual
)
select id, str, rtrim(to_char(to_number(str), 'FM999999990.99999'), '.') as result
from t;

        ID STR   RESULT          
---------- ----- ----------------
         1 3.4   3.4             
         2 4.00  4               
         3 5.23  5.23            
         4 2.0   2               
         5 0.00  0               
         6 000   0               
         7 01    1               
         8 00.10 0.1             

Eine andere Möglichkeit besteht darin, einfach in eine Zahl in Ihrer Abfrage zu konvertieren und den Client oder was auch immer dies verbraucht, entscheiden zu lassen, wie sie formatiert werden soll.

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

C Nur Zeichen von ganzen Zahlen drucken

Preg-Übereinstimmung, um nur Zahlen mit ganzen Zahlen oder Dezimalstellen mit Vorzeichen + oder - zu validieren

Perl: Bitte um Verbesserung meiner REGEX (nur mit positiven / negativen ganzen Zahlen / Dezimalstellen und Kommas übereinstimmen)

Nur Zahlen von BeautifulSoup anstelle von ganzen Div

So wählen Sie Zeilen mit ganzen Zahlen aus einer Spalte mit Dezimalstellen aus

Finden Sie Paare von ganzen Zahlen aus einem Array mit einer Differenz von k (nur mit Hash-Tabellen)

Berechnung von 2 ^ n% k nur mit ganzen Zahlen

Summen von ganzen Zahlen aus einer Liste von Listen

Identifizieren von ganzen Zahlen aus einer Liste mit Strings und ganzen Zahlen

Gruppenfolge von ganzen Zahlen

Kanalscheibe von ganzen Zahlen

Sammlungen von ganzen Zahlen

Zahlenaufteilung von ganzen Zahlen

Entfernen von ganzen Zahlen aus einer Liste+Python

Rückgabe von ganzen Zahlen aus einem Textfeld

Wie schneide ich ein Array von ganzen Zahlen in Java aus?

Tupel von Paaren aus der Liste der ganzen Zahlen

Extrahieren von zufälligen ganzen Zahlen aus einer gegebenen Variablen

Vergleichen von ganzen Zahlen aus Tupeln in einer for-Schleife

C Programmierung: Summe einer Folge von ganzen Zahlen bis Null und gibt die Summe von zwei multiplizierten ganzen Zahlen aus

Wie zu tun Addition von Zahlen von mehreren ganzen Zahlen bestand aus

Verwenden Sie die Java Math-Quadratwurzelmethode, um Quadratwurzeln von 1 bis 1.000 zu berechnen. Geben Sie dann nur die ganzen Zahlen aus

Speichern großer Zahlen aus Benutzereingaben in einem Array von ganzen Zahlen

Erhalte zufällige ganze Zahlen aus dem Bereich von ganzen Zahlen

Division von ganzen Zahlen in Java

bestimmte Anzahl von ganzen Zahlen

Folge von ganzen Zahlen in Rcpp

VBA Division von ganzen Zahlen

Java: Atomtupel von ganzen Zahlen

TOP Liste

  1. 1

    So legen Sie mit dem Interface Builder unterschiedliche führende Speicherplätze für unterschiedliche Geräte fest

  2. 2

    Fügen Sie eine weitere Schaltfläche zu gwt Suggest Box hinzu

  3. 3

    Wie konvertiere ich einen Vektor von Bytes (u8) in eine Zeichenfolge?

  4. 4

    Wie kann ich in SCSS mehrere Klassen zu einer einzigen kombinieren?

  5. 5

    Wie konvertiert man einen Datenrahmen im langen Format in eine Liste mit einem geeigneten Format?

  6. 6

    Speichern Sie ein MPAndroidChart-Diagramm in einem Bild, ohne es in einer Aktivität anzuzeigen

  7. 7

    Gruppieren Sie Datenrahmenspalten nach ihrem Datum (die Spaltentitel enthalten) und fassen Sie die Instanzen von Einsen und Nullen in R . zusammen

  8. 8

    Tomcat - Leiten Sie den alten Kontextstamm zum neuen Kontextstamm um

  9. 9

    Eclipse Oxygen - Projekte verschwinden

  10. 10

    Wie wählt man Unterschiede mit drei Tabellen aus?

  11. 11

    Tic Tac Toe-Spiel im React-Reset-Button funktioniert nicht

  12. 12

    So berechnen Sie die Verfügbarkeit von Anwendungen (SLA)

  13. 13

    ElasticSearch BulkShardRequest ist aufgrund von org.elasticsearch.common.util.concurrent.EsThreadPoolExecutor fehlgeschlagen

  14. 14

    Wie kann ich den Kaskadenmodus global einstellen?

  15. 15

    Python: Spalten mit demselben Namen zusammenführen, wobei der Mindestwert beibehalten wird

  16. 16

    So erhalten Sie eine gleichmäßige Höhe für alle Eingabefelder

  17. 17

    Wie erstelle ich einen neuen übergeordneten Knoten außerhalb der .ref (/ path) in der Firebase-Echtzeitdatenbank mithilfe von Cloud-Funktionen (Typescript)?

  18. 18

    Was ist schneller: SUM über NULL oder über 0?

  19. 19

    Wie kann ich eine verschachtelte Schleife mit lapply in R ersetzen?

  20. 20

    Kann ich ein Tkinter-Canvas erstellen, das mehrere Zeilen in einem Text-Widget umfasst?

  21. 21

    Ärgerliches Problem mit yaml, das ich nicht lösen kann

heißlabel

Archiv