sql >> Database teknologi >  >> RDS >> Mysql

Skal jeg gemme et felt PRICE som en int eller som en float i databasen?

Interessant spørgsmål.

Jeg ville faktisk ikke vælge float i mysql-miljøet. For mange problemer i fortiden med præcision med den datatype.

For mig ville valget være mellem int og decimal(18,4) .

Jeg har set eksempler fra den virkelige verden, der bruges til at repræsentere flydende kommaværdier. Det interne i JD Edwards datatabeller gør alle dette. Mængder divideres typisk med 10.000. Selvom jeg er sikker på, at det er hurtigere og mindre i tabellen, betyder det bare, at vi altid er nødt til at CAST ints til en decimalværdi, hvis vi vil gøre noget med dem, især division.

Fra et programmeringsperspektiv vil jeg altid foretrække at arbejde med decimal til pris ( eller money i RDBMS'er, der understøtter det ).



  1. Hvordan kører jeg en forespørgsel i MYSQL uden at skrive den til den binære log

  2. mysqli-forespørgsel returnerer kun første række

  3. mysql n:m relation:Find rækker med flere specifikke relationer

  4. Hvordan skriver man en MYSQL-forespørgsel, der returnerer børn indlejret under forældre?