Quero adicionar índices a algumas das colunas de uma tabela na criação. Existe uma maneira de adicioná-los à definição CREATE TABLE ou tenho que adicioná-los depois com outra consulta?
CREATE INDEX reply_user_id ON reply USING btree (user_id);
postgresql
database-schema
database-indexes
Xeoncross
fonte
fonte
Não.
No entanto, você pode criar
unique
índices no criar, mas isso é porque eles são classificados como restrições . Você não pode criar um índice "geral".fonte
Você está procurando uma definição de índice embutido , que não está disponível para PostgreSQL até a versão atual 12. Exceto a restrição UNIQUE / PRIMARY KEY, que cria o índice subjacente para você.
CRIAR A TABELA
O exemplo de sintaxe de definição de coluna inline (aqui SQL Server):
db <> demonstração de violino
A lógica por trás de sua introdução é bastante interessante. O que são índices embutidos? por Phil Factor
fonte
b VARCHAR(10) NOT NULL INDEX idx_tab_b gin (b gin_trgm_ops)
.. como adicionar mais parâmetros sem repetir o nome da coluna?CREATE INDEX idxName ON tableName USING MethodName (fieldName optionName);
em sintaxe de definição de índice embutido . PS: esta questão é sobre PostgreSQL e não Microsoft-SQL-Server (veja as tags).