Esittely
Kun sinun on tallennettava numeerisia arvoja, joissa on suuri määrä desimaalilukuja, sinun on varmistettava, että käytät tehtävää varten oikeaa tietotyyppiä. PostgreSQL tarjoaa DOUBLE PRECISION-tietotyyppiä tämäntyyppisiä numeerisia tietoja varten – tietotyyppi tarjoaa 8 tavua tallennustilaa ja siihen mahtuu jopa 15 desimaalilukua. Tässä artikkelissa käsittelemme PostgreSQL DOUBLE PRECISION -tietotyyppiä ja näytämme, miten tätä tietotyyppiä käytetään kyselyissä ja lisäysoperaatioissa.
Edellytykset
Voidaksesi seurata tämän opetusohjelman esimerkkejä, sinun on asennettava ja käytettävä PostgreSQL:ää. Voit käyttää komentoa psql -V terminaalissa vahvistaaksesi, että PostgreSQL on asennettu ja näyttää sen versionumeron. Varmista, että Postgreesin asennus toimii, ennen kuin jatkat DOUBLE PRECISION kyselyesimerkkejä myöhemmin tässä oppaassa.
Avaa psql-komentorivikonsoli
Aloitetaan avaamalla vuorovaikutteinen komentorivi PostgreSQL:lle. Käytämme alla olevaa komentoa:
| 
 1 
 | 
  sudo -u postgres psql 
 | 
Komennon avulla saamme postgres superkäyttäjän käyttöoikeudet.
PostgreSQL DOUBLE PRECISION -tyyppi
PostgreSQL DOUBLE PRECISION -tyyppi on numeerinen tietotyyppi; se tunnetaan myös vaihtoehtoisella nimellä float8. Kaksoistarkkuusarvoja käsitellään PostgreSQL:ssä kuten liukulukuarvoja. Tämä tarkoittaa, että tapahtuu jonkin verran pyöristämistä, jos yrität tallentaa arvon, jossa on ”liian monta” desimaalilukua; jos esimerkiksi yrität tallentaa tuloksen 2/3, tapahtuu jonkin verran pyöristämistä, kun saavutetaan 15. numero. Useimmissa tapauksissa tästä approksimaatiosta ei ole todellista seurausta, mutta voi olla tilanteita, joissa tarvitaan absoluuttista tarkkuutta ja NUMERIC-tietotyyppi on parempi valinta.
| TIETOTYYPPI | KUVAUS | RANGE | 
|---|---|---|
| kaksoistarkkuus, float, float8 | desimaaliluku, liukulukutarkkuus, liukulukulukutason numeerinen data, kokonaislukuarvot | 15 desimaalin tarkkuus | 
Tietokannan ja taulukon luominen PostgreSQL:ssä
Tässä osassa luodaan taulukko a, jonka tietotyyppi on DOUBLE PRECISION. Ennen sitä meidän on luotava tietokanta PostgreSQL:ssä. Käytämme alla olevaa komentoa:
| 
 1 
 | 
  CREATE DATABASE some_db; 
 | 
Huomautus: Voit vapaasti käyttää haluamaasi tietokannan nimeä.
- 
Komennolla
\lsaat näkyviin luettelon kaikista PostgreSQL-tietokantaklusterissasi olevista tietokannoista. - 
Komennolla
\cvoit muodostaa yhteyden tiettyyn tietokantaan. 
Kun olet luonut tietokantasi, voit luoda siihen taulukon.
Taulukon luomisen syntaksi on esitetty alla:
| 
 1 
2 2 3  | 
  CREATE TABLE TABLE_NAME( 
COL1 + DATA_TYPE + CONSTRAINT , COL2 + DATA_TYPE + CONSTRAINT );  | 
Tässä on SQL-lause, jolla luomme taulumme:
| 
 1 
2 3 4 5 6 7  | 
  CREATE TABLE demo( 
id SERIAL PRIMARY KEY, str_col VARCHAR(100), int_col INT NOT NULL, boolean_col BOOL, float_col DOUBLE PRECISION );  | 
Käyttääksesi taulukon tietoja, käytä vain komentoa \d demo;. Tämän komennon tuloste näyttää tältä:
| 
 1 
2 3 4 4 5 6 6 7 8 8 9 10  | 
  Taulukko ”public.demo” 
Sarake | Tyyppi | Collation | Nullable | Default ————-+————————+———–+———-+———————————- id | integer | | | not null | nextval(’demo_id_seq’::regclass) str_col | character varying(100) | | | | int_col | integer | | | not null | boolean_col | boolean | | | | float_col | double precision | | | | Indexes: ”demo_pkey” PRIMARY KEY, btree (id)  | 
Sisällytä joitakin arvoja DOUBLE PRECISION-sarakkeeseen
 Voimme käyttää INSERT-lauseketta lisätäksemme tietoja DOUBLE PRECISION-sarakkeeseemme sekä taulukon muihin sarakkeisiin:
| 
 1 
2 3 4  | 
  INSERT INTO demo (str_col, int_col, boolean_col, float_col) 
VALUES(’ObjectRocket’, 1234, TRUE, 09673143120), (’Examples’, 6688, FALSE, 09057046055), (’Tutorials’, 9678, TRUE, 09129158355);  | 
Voidaksesi nähdä float_column:n arvot, käytä alla esitettyä yksinkertaista SELECT-lausetta:
| 
 1 
 | 
  SELECT id, float_col FROM demo; 
 | 
Tuloste näyttää seuraavalta:
| 
 1 
2 3 4 5  | 
  id | float_col  
—-+————. 1 | 9673143120 2 | 9057046055 3 | 9129158355  | 
Johtopäätös
Jos suunnittelet tallentavasi numeerisia arvoja, jotka vaativat tiettyä tarkkuutta tai pituutta, DOUBLE PRECISION-tietotyyppi voi olla oikea valinta tarpeisiisi. Tässä artikkelissa esittelimme PostgreSQL DOUBLE PRECISION -tyyppiä ja kävimme läpi joitakin esimerkkejä tämän tyypin tietojen lisäämisestä ja hakemisesta. Näiden esimerkkien avulla olet valmis käyttämään DOUBLE PRECISION-tietotyyppiä omassa PostgreSQL-tietokannassasi.