![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 330 Pomógł: 0 Dołączył: 25.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
wykonuje zapytanie typu
update featureValueML set `featureValue_name` = `featureValue_name` * 100 WHERE `featureValue_id` = 8 wartość przed tą operacją to 17.6, a po operacji 1760.0000000000002 skąd bierze się "0.0000000000002" ? dodam że pole featureValue_name ma typ VARCHAR i tak musi pozostać. przy przemnożeniu przez 10 mam prawidłową wartośc 176, gdy przemnożę przez 1000 to też mam poprawną wartość 1760, więc to bardzo dziwna sprawa. round załatwia sprawę. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1. Standardowa lektura: https://www.google.pl/search?q=what+every+p...me&ie=UTF-8
2. Trzymanie liczb w VARCHAR-ze? Dlaczego? |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 330 Pomógł: 0 Dołączył: 25.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
murze w tej tabeli trzymać liczby jako varchar to bo sa cechy, a cechami raz mogą być liczby a mogą być też słowa.
Ale w przypadku gdy SA to liczby muszą zachowywać się jak liczby, a nie jak słowa. Zmienianie typu pola w zależności czy akurat dana wartość jest numeryczna, czy nie dość znacznie skomplikuje mi prace, ale jeśli nie ma innego rozwiązania to tak trzeba będzie to zrobić. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Kod SELECT CAST('17.6' AS DECIMAL(10,2))*100; Tylko musisz sobie jakiś warunek na to zrobić, albo obok dawać kolumnę z org. wartością. I jeśli ta z lewej == 0.00 to bierz war. z prawej. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 12:48 |