Dada as seguintes tabelas:

_________PESSOA_________

id serial PK

nome varchar(50) NOT NULL

email varchar(100) NOT NULL

tel varchar(14) NOT NULL

--------------------------------

_________CLIENTE__________

pessoa integer FK/PK --(FK to id in tbl PESSOA)

rg varchar(20) NOT NULL

cpf varchar(14) NOT NULL

----------------------------------------

_________DEPENDENTE________

pessoa integer FK/PK --(FK to id in tbl PESSOA)

fiador integer FK NOT NULL--(FK to pessoa in tbl CLIENTE)

autorizado boolean NOT NULL

--------------------------------------------

_________FUNCIONARIO________

pessoa integer FK/PK --(FK to id in tbl PESSOA)

root boolean NOT NULL

--------------------------------------------

Uma pessoa pode ser tanto um funcionário como um cliente ou um dependente ou os três.

Quero fazer um select que me informe em quais das três tabelas o ID de PESSOA é usado como chave estrangeira, ou seja, saber um se uma pessoa é um cliente, um cliente/funcionário, um cliente/dependente/funcionario, etc.

A forma de retorno ideal pode ser um array de chars com a leta inicial de cada tabela (ex. {C, D, F}), ou uma string composta pela letra inicial de cada uma 'CDF'.

_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a