Autor Zpráva
janičkaG
Profil *
Dobrý den,

mám tabulku zakaznik, kde mam id, jmeno, email, plat a prave u plat mam radek jako TEXT. Snad to ničemu nevadí.

Ale mám takový problém. Když si chci vypsat WHERE plat < '$castka' ... kde $castka = '500'; Tak mě to vypíše i zákazníka s platem 3500.
Když dám 1100, tak opět úplně divný výpis.

Myslíte, že to souvisí s tím nastavením v mySQL toho řádku plat, kde je jako TEXT? ... dát tam třeba varchar?
fibi
Profil *
To je nějaká legrace ? :-)
Sloupec pro plat musí být číselného typu, pak to bude fungovat. Tedy například INT .
janičkaG
Profil *
A veme INT i čislo s desetinou čárkou?
Kajman_
Profil *
Použijte datový typ decimal a ukládejte čísla s desetinnou tečkou.
laijk
Profil
INT je celé číslo, pre desatinné daj FLOAT(celkový počet, počet desatinných miest)
laijk
Profil
Kajman:
už keď sme sa takto nezhodli, aký je roziel medzi FLOAT a DECIMAL? lepšie je použiť DECIMAL, ale prečo? zdá sa mi, že pri FLOAT sa s hodnotami nedá počítať, je to pravda?
Alphard
Profil
S hodnotami typu float samozřejmě počítat lze, jen je to klasický typ s plovoucí desetinnou čárkou a při práci s ním mohou vznikat odchylky (plynou z reprezentace čísel do určitého počtu bajtů binární soustavy). Pro peníze tedy decimal, který je přesný.
okolojdouci
Profil *
Přeloženo do češtiny: Když uložíš 10.1 do decimal a načteš, máš 10.1. Když to uložíš do float a načteš, podivíš se.
laijk
Profil
okolojdouci:
ďakujem :)
len nechápem načo potom FLOAT je keď na celé čísla je INT.
okolojdouci
Profil *
laijk:
len nechápem načo potom FLOAT je keď na celé čísla je INT.

Na opravdu velká čísla.
„Vesmír je velký. Fakticky velký. To byste nevěřili, jak je hrozivě obrovitánsky velký, že z toho zůstává rozum stát. Myslíte si třeba, že drogerie ve vaší ulici je daleko, ale proti vesmíru je to úplný houby. Tak poslouchejte...,“ atakdále.
laijk
Profil
no a načo potom je BIGINT ? :D

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0