PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Como definir um alias de operador no PostgreSQL?


Basta verificar pgAdmin, o esquema pg_catalog. Ele tem todos os operadores e mostra como criá-los para todos os tipos de dados. Sim, você precisa criá-los para todos os tipos de dados. Portanto, não é apenas um único "alias", você precisa de muitos aliases.

Exemplo para um char =char, usando !!!! como apelido:
CREATE OPERATOR !!!!   -- name
(
  PROCEDURE = pg_catalog.chareq,
  LEFTARG = "char",
  RIGHTARG = "char",
  COMMUTATOR = !!!!, -- the same as the name
  RESTRICT = eqsel,
  JOIN = eqjoinsel,
  HASHES,
  MERGES
);
SELECT 'a' !!!! 'a' -- true
SELECT 'a' !!!! 'b' -- false

Verifique o manual também e preste atenção nas regras de nomenclatura, tem algumas restrições.