Maison > base de données > tutoriel mysql > PostgreSQL prend-il en charge les colonnes calculées comme SQL Server ?

PostgreSQL prend-il en charge les colonnes calculées comme SQL Server ?

Barbara Streisand
Libérer: 2025-01-21 17:27:09
original
378 Les gens l'ont consulté

Does PostgreSQL Support Computed Columns Like SQL Server?

Colonnes calculées dans PostgreSQL

Q : PostgreSQL prend-il en charge les colonnes calculées similaires à celles de MS SQL Server ?

R : Oui, PostgreSQL 12 et versions ultérieures introduisent les colonnes générées STORED, qui sont similaires aux colonnes calculées dans SQL Server.

PostgreSQL 12 ou supérieur

  • Prend en charge les colonnes générées STOCKÉES et suit les normes SQL.

  • Exemple :

      CREATE TABLE tbl (
          int1    int,
          int2    int,
          product bigint GENERATED ALWAYS AS (int1 * int2) STORED
      );
    Copier après la connexion

PostgreSQL 11 ou version antérieure

  • ne prend pas directement en charge les colonnes générées.

  • La solution de contournement consiste à utiliser une fonction avec notation d'attribut, qui simule une colonne générée virtuelle :

      CREATE FUNCTION col(tbl) ... AS ...  -- 计算表达式
      CREATE INDEX ON tbl(col(tbl));
    Copier après la connexion

Alternatives

  • View peut être utilisé pour implémenter des colonnes calculées, mais n'est pas accessible via SELECT *.
  • Trigger peut être utilisé pour implémenter des colonnes calculées persistantes (STORED).
  • Les
  • Vues matérialisées offrent des options plus efficaces pour conserver les colonnes calculées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal