PostgreSQL 中的計算列
問:PostgreSQL 是否支援與 MS SQL Server 中類似的計算列?
答:是的,PostgreSQL 12 及更高版本引入了 STORED 生成列,它類似於 SQL Server 中的計算列。
PostgreSQL 12 或更高版本
支援 STORED 產生欄位,並遵循 SQL 標準。
範例:
<code class="language-sql"> CREATE TABLE tbl ( int1 int, int2 int, product bigint GENERATED ALWAYS AS (int1 * int2) STORED );</code>
PostgreSQL 11 或更低版本
不直接支援 產生欄位。
解決方法是使用屬性表示法的函數,這模擬了虛擬生成列:
<code class="language-sql"> CREATE FUNCTION col(tbl) ... AS ... -- 计算表达式 CREATE INDEX ON tbl(col(tbl));</code>
替代方案
以上是PostgreSQL 是否像 SQL Server 一樣支援計算列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!