🛢️
PostgreSQL
Grokking Algorithm
  • Content
  • Environment
  • Getting Started
    • Introduction
      • What is PostgreSQL
      • Introduction to PostgreSQL sample database
    • Postgres on Windows
      • Install PostgreSQL on Windows
      • Connect to PostgreSQL database server
      • Load the sample database into the PostgreSQL database server
    • Postgres on Linux
    • Install PostgreSQL on macOS
  • Basic
    • Querying Data
      • SELECT
      • Column alias
      • ORDER BY
      • SELECT DISTINCT
    • Filtering Data
      • WHERE
      • AND
      • OR
      • LIMIT
      • FETCH
      • IN
      • BETWEEN
      • LIKE
      • IS NULL
    • Joining Multiple tables
      • Joins
      • Table aliases
      • INNER JOIN
      • LEFT JOIN
      • RIGHT JOIN
      • SELF JOIN
      • FULL OUTER JOIN
      • CROSS JOIN
      • NATURAL JOIN
    • Grouping data
      • GROUP BY
      • HAVING
    • Set Operations
      • UNION
      • INTERSECT
      • EXCEPT
    • Grouping sets, Cube, and Rollup
      • Grouping sets
      • CUBE
      • ROLLUP
    • Subquery
      • Subquery
      • ANY
      • ALL
      • EXISTS
    • Common Table Expressions
      • PostgreSQL CTE
      • Recursive query using CTEs
    • Modifying Data
      • Insert
      • Insert multiple rows
      • Update
      • Update join
      • Delete
      • Upsert
    • Transactions
      • PostgreSQL Transaction
    • Import & Export Data
      • Import CSV file into Table
      • Export PostgreSQL Table to CSV file
    • Managing Tables
      • Data types
      • Create a table
      • Select into
      • Create table as
      • Auto-increment
      • Sequences
      • Identity column
      • Alter table
      • Rename table
      • Add column
      • Drop column
      • Change column data type
      • Rename column
      • Drop table
      • Truncate table
      • Temporary table
      • Copy a table
    • Understanding PostgreSQL constraints
      • Primary key
      • Foreign key
      • UNIQUE constraint
      • CHECK constraint
      • NOT NULL constraint
    • PostgreSQL Data Types in Depth
      • Boolean
      • CHAR, VARCHAR and TEXT
      • NUMERIC
      • Integer
      • DATE
      • Timestamp
      • Interval
      • TIME
      • UUID
      • Array
      • hstore
      • JSON
      • User-defined data types
  • Advanced
  • PG-PGSQL
  • Functions
  • Adminstration
  • API
Powered by GitBook
On this page
  • SMALLINT
  • INTEGER
  • BIGINT
  • Xulosa

Was this helpful?

Edit on GitHub
  1. Basic
  2. PostgreSQL Data Types in Depth

Integer

Ushbu qo'llanma sizni turli xil PostgreSQL butun son turlari, jumladan SMALLINT, INTEGER va BIGINT bilan tanishtiradi.

Butun sonlarni PostgreSQL da saqlash uchun quyidagi son;ar turlaridan birini ishlatishingiz mumkin:

  • SMALLINT

  • INTEGER

  • BIGINT

Quyidagi jadvalda har bir butun son turining spetsifikatsiyasi ko'rsatilgan:

Name
Storage Size
Min
Max

SMALLINT

2 bytes

-32,768

+32,767

INTEGER

4 bytes

-2,147,483,648

+2,147,483,647

BIGINT

8 bytes

-9,223,372,036,854,775,808

+9,223,372,036,854,775,807

Agar qiymatni ruxsat etilgan diapazonlardan tashqarida saqlashga harakat qilsangiz, PostgreSQL xatolik chiqaradi.

MySQL butun sonidan farqli o'laroq, PostgreSQL unsigned integer turlarini ta'minlamaydi.

SMALLINT

SMALLINT (-32,767, 32,767) oralig'idagi har qanday butun sonlarni saqlashi mumkin bo'lgan 2 bayt saqlash hajmini talab qiladi.

SMALLINT turidan odamlarning yoshi, kitob sahifalari soni va hokazolarni saqlash uchun foydalanishingiz mumkin.

Quyidagi bayonot books nomli jadval yaratadi:

CREATE TABLE books (
    book_id SERIAL PRIMARY KEY,
    title VARCHAR (255) NOT NULL,
    pages SMALLINT NOT NULL CHECK (pages > 0)
);

Ushbu misolda title ustuni SMALLINT ustunidir. Sahifalar soni ijobiy boʻlishi kerakligi sababli, biz ushbu qoidani qoʻllash uchun CHECK cheklovini qoʻshdik.

INTEGER

INTEGER butun son turlari orasida eng keng tarqalgan tanlovdir, chunki u saqlash hajmi, diapazoni va unumdorligi o'rtasidagi eng yaxshi muvozanatni ta'minlaydi.

INTEGER turi raqamlarni (-2,147,483,648, 2,147,483,647) oralig'ida saqlashi mumkin bo'lgan 4 bayt saqlash hajmini talab qiladi.

Quyidagi misol sifatida shahar yoki hatto mamlakat aholisi kabi juda katta butun sonlarni saqlaydigan ustun uchun INTEGER turidan foydalanishingiz mumkin:

CREATE TABLE cities (
    city_id serial PRIMARY KEY,
    city_name VARCHAR (255) NOT NULL,
    population INT NOT NULL CHECK (population >= 0)
);

E'tibor bering, INT INTEGER so'zining sinonimidir.

BIGINT

Agar siz INTEGER tipidagi diapazondan tashqarida bo'lgan butun sonlarni saqlamoqchi bo'lsangiz, BIGINT turidan foydalanishingiz mumkin.

BIGINT turi har qanday raqamni (-9,223,372,036,854,775,808,+9,223,372,036,854,775,807) oralig'ida saqlashi mumkin bo'lgan 8 bayt hajmli saqlash hajmini talab qiladi.

BIGINT turidan foydalanish nafaqat koʻp xotirani, shu bilan birga, ma'lumotlar bazasining ishlashini pasaytiradi, shuning uchun siz uni ishlatish uchun yaxshi sababga ega bo'lishingiz kerak.

Xulosa

  • Ma'lumotlar bazasida butun sonlarni saqlash uchun SMALLINT, INT va BIGINT ma'lumotlar turlaridan foydalaning.

PreviousNUMERICNextDATE

Last updated 1 year ago

Was this helpful?

©

postgresqltutorial.com