SQLite - zwrata wartość całkowitą zamiast zmiennoprzecinkowej

SQLite - zwrata wartość całkowitą zamiast zmiennoprzecinkowej
HI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1863
0

Witam.

Trafiłem na coś czego nie bardzo mogę pojąć.

Mam w SQLite tabelę zamowienia:
screenshot-20200211151410.png

w niej jakieś dane:
screenshot-20200211151435.png

oraz takie zapytanie:

Kopiuj
SELECT 
z_id, 
z_datawyslania, 
z_datarealizacji, 
z_wartosc, 
cast(z_wartosc as float), 
cast(z_wartosc as decimal), 
z_uwagi 
FROM zamowienia z
order by z_id desc

baza zwraca taki wynik:
screenshot-20200211151555.png

Dlaczego wartości cast(z_wartosc as float), cast(z_wartosc as decimal) zwracają liczby całkowite?

PA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3891
2

No prawidłowo, jeśli sięgniesz do dokumentacji:

https://www.sqlite.org/datatype3.html

A column with NUMERIC affinity may contain values using all five storage classes.

Jakbyś tam miał 13.78 to dostałbyś oczekiwany wynik: http://sqlfiddle.com/#!7/1d75f/1

HI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1863
0

@Panczo dzięki wielkie!

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.