sql >> Databasteknik >  >> RDS >> Oracle

Skillnad mellan tal och heltalsdatatyp i orakelordboksvyer

den bästa förklaringen jag har hittat är denna:

Vad är skillnaden mellan INTEGER och NUMBER? När ska vi använda NUMBER och när ska vi använda INTEGER? Jag ville bara uppdatera mina kommentarer här...

NUMBER lagras alltid som vi gick in. Skalan är -84 till 127. Men HELTAL avrundar till heltal. Skalan för HELTAL är 0. HELTAL är ekvivalent med TAL(38,0). Det betyder att INTEGER är ett begränsat antal. Decimalen kommer att avrundas. Men NUMBER är inte begränsat.

  • HELTTAL(12.2) => 12
  • HELTTAL(12.5) => 13
  • HELATAL(12.9) => 13
  • HELTTAL(12.4) => 12
  • NUMBER(12.2) => 12.2
  • NUMMER(12,5) => 12,5
  • NUMMER(12,9) => 12,9
  • NUMMER(12,4) => 12,4

INTEGER är alltid långsammare än NUMBER. Eftersom heltal är ett tal med tillagd begränsning. Det krävs ytterligare CPU-cykler för att upprätthålla begränsningen. Jag såg aldrig någon skillnad, men det kan bli en skillnad när vi laddar flera miljoner poster i kolumnen INTEGER. Om vi ​​behöver se till att inmatningen är heltal, är INTEGER det bästa alternativet. Annars kan vi hålla oss till NUMBER datatyp.

Här är länken



  1. värde för långt för typ tecken varierande (100)----nyligen bytte databas, gjorde ingenting i db

  2. MySQL:Antal poster med på varandra följande månader

  3. Kan inte ansluta till https://api.elephantsql.com från pg admin

  4. Jboss AS7 anslutningspool kommer inte att återansluta