Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Pobierz liczbę cyfr po przecinku zmiennoprzecinkowym (z częścią dziesiętną lub bez)

Możesz to zrobić w następujący sposób:

ZAPYTANIE

SELECT Amount, 
       CASE WHEN FLOOR(Amount) <> CEILING(Amount) THEN LEN(CONVERT(INT,CONVERT(FLOAT,REVERSE(CONVERT(VARCHAR(50), Amount, 128))))) ELSE 0 END AS Result
FROM YourTable

WYJŚCIE

Amount      Result
123         0
123,1       1
123,0123    4
123,789456  6


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pobierz ostatnio wstawiony identyfikator wiersza (z instrukcją SQL)

  2. Przypisz wynik dynamicznego sql do zmiennej

  3. Czy zapytania ANSI JOIN i inne niż ANSI JOIN będą działać inaczej?

  4. Funkcja SQL Row_Number() w klauzuli Where

  5. Różnica czasu SQL między dwiema datami daje wynik gg:mm:ss