O EXCLUDE column_list nomeia as colunas excluídas dos resultados da consulta. Usar a opção EXCLUDE é útil quando somente um subconjunto de colunas precisa ser excluído de uma tabela ampla, que é uma tabela que contém muitas colunas.
Tópicos
Sintaxe
EXCLUDE column_list
Parâmetros
- column_list
-
Uma lista separada por vírgulas de um ou mais nomes de coluna que existem nas tabelas usadas como referência pela consulta. A column_list pode ser colocada entre parênteses. Somente nomes de coluna são aceitos na lista de exclusão de nomes de coluna, não expressões, como
upper(col1)
, ou asterisco (*).column-name, ... | ( column-name, ... )
Por exemplo:
SELECT * EXCLUDE col1, col2 FROM tablea;
SELECT * EXCLUDE (col1, col2) FROM tablea;
Exemplos
Os exemplos a seguir usam a tabela SALES que contém as colunas: salesid, listid, sellerid, buyerid, eventid, dateid, qtysold, pricepaid, commission e saletime. Para ter mais informações sobre a tabela SALES, consulte Banco de dados de exemplo.
O exemplo a seguir exibe linhas da tabela SALES, mas exclui a coluna SALETIME.
SELECT * EXCLUDE saletime FROM sales;
salesid | listid | sellerid | buyerid | eventid | dateid | qtysold | pricepaid | commission
--------+---------+----------+---------+---------+---------+----------+------------+-----------
150314 | 173969 | 48680 | 816 | 8762 | 1827 | 2 | 688 | 103.2
8325 | 8942 | 23600 | 1078 | 2557 | 1828 | 5 | 525 | 78.75
46807 | 52711 | 34388 | 1047 | 2046 | 1828 | 2 | 482 | 72.3
...
O exemplo a seguir exibe linhas da tabela SALES, mas exclui as colunas QTYSOLD e SALETIME.
SELECT * EXCLUDE (qtysold, saletime) FROM sales;
salesid | listid | sellerid | buyerid | eventid | dateid | pricepaid | commission
--------+---------+----------+---------+---------+---------+------------+-----------
150314 | 173969 | 48680 | 816 | 8762 | 1827 | 688 | 103.2
8325 | 8942 | 23600 | 1078 | 2557 | 1828 | 525 | 78.75
46807 | 52711 | 34388 | 1047 | 2046 | 1828 | 482 | 72.3
...
O exemplo a seguir cria uma visão que exibe linhas da tabela SALES, mas exclui a coluna SALETIME.
CREATE VIEW sales_view AS SELECT * EXCLUDE saletime FROM sales;
SELECT * FROM sales_view;
salesid | listid | sellerid | buyerid | eventid | dateid | qtysold | pricepaid | commission
--------+---------+----------+---------+---------+---------+----------+------------+-----------
150314 | 173969 | 48680 | 816 | 8762 | 1827 | 2 | 688 | 103.2
8325 | 8942 | 23600 | 1078 | 2557 | 1828 | 5 | 525 | 78.75
46807 | 52711 | 34388 | 1047 | 2046 | 1828 | 2 | 482 | 72.3
...
O exemplo a seguir seleciona somente as colunas não excluídas em uma tabela temporária.
SELECT * EXCLUDE saletime INTO TEMP temp_sales FROM sales;
SELECT * FROM temp_sales;
salesid | listid | sellerid | buyerid | eventid | dateid | qtysold | pricepaid | commission
--------+---------+----------+---------+---------+---------+----------+------------+-----------
150314 | 173969 | 48680 | 816 | 8762 | 1827 | 2 | 688 | 103.2
8325 | 8942 | 23600 | 1078 | 2557 | 1828 | 5 | 525 | 78.75
46807 | 52711 | 34388 | 1047 | 2046 | 1828 | 2 | 482 | 72.3
...