Quiero agregar índices a algunas de las columnas de una tabla en el momento de la creación. ¿Hay alguna forma de agregarlos a la definición de CREAR TABLA o tengo que agregarlos después con otra consulta?
CREATE INDEX reply_user_id ON reply USING btree (user_id);
postgresql
database-schema
database-indexes
Xeoncross
fuente
fuente
No.
Sin embargo, puede crear
unique
índices en la creación, pero eso se debe a que están clasificados como restricciones . No puede crear un índice "general".fuente
Está buscando una definición de índice en línea , que no está disponible para PostgreSQL hasta la versión actual 12. Excepto la restricción UNIQUE / PRIMARY KEY, que crea un índice subyacente para usted.
CREAR MESA
La sintaxis de muestra de la definición de columna en línea (aquí SQL Server):
db <> demostración de violín
La razón de ser de su introducción es bastante interesante. ¿Qué son los índices en línea? por Phil Factor
fuente
b VARCHAR(10) NOT NULL INDEX idx_tab_b gin (b gin_trgm_ops)
... cómo agregar más parámetros sin repetir el nombre de la columna?CREATE INDEX idxName ON tableName USING MethodName (fieldName optionName);
en sintaxis de definición de índice en línea . PD: esta pregunta es sobre PostgreSQL, no sobre Microsoft-SQL-Server (ver etiquetas).