Rumah > pangkalan data > tutorial mysql > Bagaimanakah Sokongan PostgreSQL untuk Lajur Dikira Berkembang?

Bagaimanakah Sokongan PostgreSQL untuk Lajur Dikira Berkembang?

Susan Sarandon
Lepaskan: 2025-01-21 17:16:09
asal
286 orang telah melayarinya

How Has PostgreSQL's Support for Computed Columns Evolved?

Lajur Dikira PostgreSQL: Semakan

Sebagai sistem pengurusan pangkalan data hubungan yang berkuasa, PostgreSQL menyediakan rangkaian luas operasi data dan fungsi pengurusan. Walau bagaimanapun, lajur yang dikira (juga dikenali sebagai lajur terkira, lajur maya, lajur terbitan atau lajur terjana) telah tiada dalam fungsinya. Artikel ini melihat secara mendalam tentang sokongan untuk lajur yang dikira dalam PostgreSQL dan mengkaji evolusinya merentas versi.

PostgreSQL 11 dan lebih awal

Sebelum PostgreSQL 11, pangkalan data tidak secara langsung menyokong lajur yang dikira. Walau bagaimanapun, pengguna boleh mensimulasikan lajur pengiraan maya menggunakan fungsi dengan tatatanda atribut (tbl.col). Teknik ini menyediakan penyelesaian yang serupa dengan lajur terjana maya. Walau bagaimanapun, penggunaannya memerlukan penyenaraian eksplisit ungkapan dalam pertanyaan SELECT.

PostgreSQL 12 dan lebih tinggi

Dengan kemunculan PostgreSQL 12, pangkalan data memperkenalkan lajur yang dijana STORED, yang konsisten dengan standard SQL dan konsisten dengan pelaksanaan dalam DBMS seperti DB2, MySQL dan Oracle. Lajur yang dikira ini disimpan dalam data jadual dan dikemas kini secara automatik berdasarkan ungkapan yang ditentukan.

Pertimbangkan contoh berikut:

<code class="language-sql">CREATE TABLE tbl (
  int1    int
, int2    int
, product bigint GENERATED ALWAYS AS (int1 * int2) STORED
);</code>
Salin selepas log masuk

Dalam contoh ini, lajur "produk" ialah lajur dijana STORED yang mengira hasil darab int1 dan int2.

Alternatif

Dalam versi PostgreSQL yang tidak menyokong lajur yang dijana secara langsung, kaedah alternatif boleh digunakan:

  • Paparan (VIEW): Paparan boleh mensimulasikan gelagat lajur yang dikira dengan mentakrifkan pertanyaan yang menghasilkan nilai lajur yang diperlukan.
  • Indeks Ungkapan: Indeks Ungkapan boleh meningkatkan prestasi pertanyaan yang melibatkan lajur yang dikira dengan mencipta indeks pada ungkapannya.
  • Materialized Views: Materialized Views ialah versi prakiraan pertanyaan yang boleh meningkatkan prestasi pertanyaan. Ia berfungsi seperti lajur yang dikira kerana ia menyediakan nilai yang diprakira.

Kesimpulan

Sokongan PostgreSQL untuk lajur yang dikira telah meningkat dengan ketara merentas versinya. Walaupun lajur yang dikira tidak disertakan secara eksplisit sebelum PostgreSQL 11, pangkalan data menyediakan penyelesaian menggunakan notasi fungsi dan sifat. PostgreSQL 12 memperkenalkan lajur yang dijana STORED, membolehkan sokongan untuk lajur yang dikira dalam pangkalan data itu sendiri. Penambahbaikan ini memberikan pengguna fleksibiliti tambahan dan pengoptimuman prestasi dalam operasi data.

Atas ialah kandungan terperinci Bagaimanakah Sokongan PostgreSQL untuk Lajur Dikira Berkembang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan