SlideShare una empresa de Scribd logo
1 de 4
1
11. ÍNDÍCES EN MYSQL
Para facilitarlaobtenciónde informaciónde unatablase utilizan índices.El índice de unatabla
desempeñalamismafunciónque el índice de unlibro: permite encontrar datos rápidamente;
en el caso de las tablas, localiza registros.
Una tabla se indexaporun campo(o varios).El índice es un tipo de archivo con 2 entradas: un
dato (un valor de algún campo de la tabla) y un puntero.
Un índice posibilitael accesodirectoyrápidohaciendomáseficientelasbúsquedas.Siníndice,
se debe recorrer secuencialmente toda la tabla para encontrar un registro. El objetivo de un
índice esacelerarla recuperaciónde información.Ladesventaja es que consume espacio en el
disco.
La indexación es una técnica que optimiza el acceso a los datos, mejora el rendimiento
acelerando las consultas y otras operaciones. Es útil cuando la tabla contiene miles de
registros.
Los índices se usan para varias operaciones:
 para buscar registros rápidamente.
 para recuperar registros de otras tablas empleando "join".
Es importante identificarel oloscampos porlos que sería útil crearun índice,aquelloscampos
por los cuales se realizan operaciones de búsqueda con frecuencia.
Hay distintos tipos de índices:
 "primary key":esel que definimoscomoclave primaria.Losvalores indexados deben
ser únicos y además no pueden ser nulos. MySQL le da el nombre "PRIMARY". Una
tabla solamente puede tener una clave primaria.
 "index": crea un índice común, los valores no necesariamente son únicos y aceptan
valores "null".Podemosdarle unnombre,si nose lodamos,se coloca unopor defecto
("key" es sinónimo de "index"). Puede haber varios por tabla.
 "unique": crea un índice para los cuales los valores deben ser únicos y diferentes,
aparece un mensaje de error si intentamos agregar un registro con un valor ya
existente. Permite valores nulos y pueden definirse varios por tabla. Podemos darle
un nombre, si no se lo damos, se coloca uno por defecto.
Todos los índices pueden ser multicolumna, es decir, pueden estar formados por más de 1
campo.
2
Una tabla puede tenerhasta64 índices.Los nombresde índicesaceptan todos los caracteres y
puedentenerunalongitudmáximade 64 caracteres. Pueden comenzar con un dígito, pero no
pueden tener sólo dígitos.
Una tabla puede ser indexada por campos de tipo numérico o de tipo carácter. También se
puede indexar por un campo que contenga valores NULL, excepto los PRIMARY.
Para ver los índices de una tabla podemos utilizar la cláusula SHOW:
Hemosdichoque hay 4 tiposde índicesde losque conocemossolamentedos:laclave primaria
que definimos al momentode crearuna tabla, lasclavesexternassi las hubiera y los campos a
losque se laañadidola restricciónUNIQUE.El que faltaesel tipode índice común: se crea con
"index",losvaloresnonecesariamentesonúnicosyaceptanvalores"null".Puede habervarios
por tabla.
Vamos a ver nuestra BD Neptuno y a la tabla Empleados, vamos a crear unas réplicas de
Empleados con un índice en el campo cargo por el que creemos que haremos consultas
frecuentemente por lo que indexar la tabla por ese campo sería útil.
Podemos crear el índice:
 En el momento de crear la tabla (no es una restricción o constraint, es una estructura
de datos interna, ordenada, que usa el motor para optimizar y agilizar las consultas o
actualizaciones sobre las tablas). Detrás de la definición de los campos colocamos
"index" seguido del nombre que le daremos al índice y entre paréntesis el o los
campos por los cuales se indexará dicho índice.
3
Si mostramoslosíndicesde estatabla:
 Después de crear la tabla mediante CREATE INDEX. Para borrar ese índice tenemos
que hacer un ALTER TABLE DROP INDEX y el nombre del índice.
Para crear índicespor múltiple camposse listanloscamposdentrode losparéntesisseparados
con comas pero realmente no es lo más utilizado, piensa que esa situación se dará
fundamentalmente en el PRIMARY KEY de las relaciones N:M y ya cada campo está indexado
por separado, así que no es nada habitual un índice de más de un campo.
En cuanto a la informaciónque devuelve laconsultaSHOWINDEXloscamposmás importantes
y realmente los únicos que necesitamos de momento son:
 La columna "Table" indica de qué tabla estamos visualizando los índices.
4
 La columna "Non_unique" indica si los valores son "no únicos"; para el índice creado
por la clave primaria indica "false" (0), significa que SON únicos, no hay valores
repetidosparaese campo(recuerde loaprendidosobre clave primaria); para el índice
"idx_cargo" y "fk_jefe3" indica "true" (1), es decir, NO son únicos, hay valores
repetidos.
 La columna"Key_name"muestrael nombre del índice;parael campocorrespondiente
a la clave primaria tomó el nombre "PRIMARY", "fk_jefe3" para la clave externa de
jefes y el otro nombre es el que le dimos nosotros al definirlo (idx_cargo).
 La columna"Column_name" muestra el nombre del campo por el que está ordenado
el índice: "id" para el índice "PRIMARY", "jefe_id" para la clave externa de jefe y
"cargo" para nuestro índice.
 La columna"Null"indicasi permite valores nulos; el índice "PRIMARY" no los permite
(NUNCA), el resto de índices en esta tabla si los permite (aparece YES). Si no debe
permitirlos la definir el campo habría que indicar el NOT NULL.
Vamosa ver el otrotipode índice que no hemos visto en un ejemplo, ÚNICO. Un índice único
se crea con "unique",losvaloresdebenserúnicosydiferentes,aparece unmensajede error si
intentamos agregar un registro con un
valor ya existente. Permite valores
nulos y pueden definirse varios por
tabla.Podemosdarle unnombre,si no
se lo damos, se coloca uno por
defecto. Vamos a crear una tabla
"libros" con un campo UNIQUE:
La borramos y la volvemos a crear un índice
sobre ese campo:
Como puedes ver los índices por defecto
admiten valores duplicados. Para crear
un índice de tipo único debes añadir esa
cláusula detrás del create:

Más contenido relacionado

La actualidad más candente

Realizado por beatriz... y kevin.. informatica
Realizado por beatriz... y kevin.. informaticaRealizado por beatriz... y kevin.. informatica
Realizado por beatriz... y kevin.. informatica
bekan221
 
Microsoft exel
Microsoft exelMicrosoft exel
Microsoft exel
mixerboy12
 
Realizado por beatriz... y kevin.. informatica
Realizado por beatriz... y kevin.. informaticaRealizado por beatriz... y kevin.. informatica
Realizado por beatriz... y kevin.. informatica
bekan221
 
Cuestionario de excel
Cuestionario  de excelCuestionario  de excel
Cuestionario de excel
Julio OChoa
 
Filtro Avanzado en Excel
Filtro Avanzado en ExcelFiltro Avanzado en Excel
Filtro Avanzado en Excel
angela1140
 
Manual excel 2007 alex
Manual excel 2007 alexManual excel 2007 alex
Manual excel 2007 alex
Alex Mendoza
 
Power point #2
Power point #2Power point #2
Power point #2
melany1321
 

La actualidad más candente (20)

Realizado por beatriz... y kevin.. informatica
Realizado por beatriz... y kevin.. informaticaRealizado por beatriz... y kevin.. informatica
Realizado por beatriz... y kevin.. informatica
 
Manual de excel
Manual de excelManual de excel
Manual de excel
 
Expo equipo 4 excel
Expo equipo 4 excelExpo equipo 4 excel
Expo equipo 4 excel
 
EXCEL - FILTROS AVANZADOS
EXCEL - FILTROS AVANZADOSEXCEL - FILTROS AVANZADOS
EXCEL - FILTROS AVANZADOS
 
Expo equipo 1 excel
Expo equipo 1 excelExpo equipo 1 excel
Expo equipo 1 excel
 
Filtros avanzados de excel
Filtros avanzados de excelFiltros avanzados de excel
Filtros avanzados de excel
 
Microsoft exel
Microsoft exelMicrosoft exel
Microsoft exel
 
Realizado por beatriz... y kevin.. informatica
Realizado por beatriz... y kevin.. informaticaRealizado por beatriz... y kevin.. informatica
Realizado por beatriz... y kevin.. informatica
 
Doc1
Doc1Doc1
Doc1
 
Cuestionario de excel
Cuestionario  de excelCuestionario  de excel
Cuestionario de excel
 
FILTROS AVANZADOS EXCEL
FILTROS AVANZADOS EXCELFILTROS AVANZADOS EXCEL
FILTROS AVANZADOS EXCEL
 
Tablas y tipos de datos
Tablas y tipos de datosTablas y tipos de datos
Tablas y tipos de datos
 
Hojas de calculo c3 .i2 p3.
Hojas de calculo c3 .i2 p3.Hojas de calculo c3 .i2 p3.
Hojas de calculo c3 .i2 p3.
 
Generalidades e interfaz excel
Generalidades e interfaz excelGeneralidades e interfaz excel
Generalidades e interfaz excel
 
FILTROS AVANZADOS EXCEL 2007
FILTROS AVANZADOS EXCEL 2007FILTROS AVANZADOS EXCEL 2007
FILTROS AVANZADOS EXCEL 2007
 
Manual de excel
Manual de excelManual de excel
Manual de excel
 
Filtro Avanzado en Excel
Filtro Avanzado en ExcelFiltro Avanzado en Excel
Filtro Avanzado en Excel
 
Manual excel 2007 alex
Manual excel 2007 alexManual excel 2007 alex
Manual excel 2007 alex
 
Filtros avanzados excel
Filtros avanzados excelFiltros avanzados excel
Filtros avanzados excel
 
Power point #2
Power point #2Power point #2
Power point #2
 

Similar a 11. indices en my sql

INDICES EN SQL SERVER
INDICES EN SQL SERVERINDICES EN SQL SERVER
INDICES EN SQL SERVER
Darwin Durand
 
Tema tablas de datos acces
Tema tablas de datos accesTema tablas de datos acces
Tema tablas de datos acces
William Martinez
 

Similar a 11. indices en my sql (20)

Indices en workbench
Indices en workbenchIndices en workbench
Indices en workbench
 
Consulta
ConsultaConsulta
Consulta
 
Indices en bases de datos my sql
Indices en bases de datos  my sqlIndices en bases de datos  my sql
Indices en bases de datos my sql
 
Filtros
FiltrosFiltros
Filtros
 
RESUMEN VISTO EN TICS III
RESUMEN VISTO EN TICS IIIRESUMEN VISTO EN TICS III
RESUMEN VISTO EN TICS III
 
INDICES EN SQL SERVER
INDICES EN SQL SERVERINDICES EN SQL SERVER
INDICES EN SQL SERVER
 
Tablas y tipos de datos
Tablas y tipos de datosTablas y tipos de datos
Tablas y tipos de datos
 
herramientas de access
herramientas de accessherramientas de access
herramientas de access
 
Resumen analitico
Resumen analiticoResumen analitico
Resumen analitico
 
Manual de excel
Manual de excelManual de excel
Manual de excel
 
Manual de excel chantel
Manual de excel chantelManual de excel chantel
Manual de excel chantel
 
Manual de excel chantel
Manual de excel chantelManual de excel chantel
Manual de excel chantel
 
PRESENTACION DE ANALISIS DE DATOS
PRESENTACION DE ANALISIS DE DATOSPRESENTACION DE ANALISIS DE DATOS
PRESENTACION DE ANALISIS DE DATOS
 
Karen alejandra corredo rfff
Karen alejandra corredo rfffKaren alejandra corredo rfff
Karen alejandra corredo rfff
 
Consulta
ConsultaConsulta
Consulta
 
Consulta
ConsultaConsulta
Consulta
 
TODO SOBRE BASE DE DATOS CON MICROSOFT SQL SERVER
TODO SOBRE BASE DE DATOS CON MICROSOFT SQL SERVERTODO SOBRE BASE DE DATOS CON MICROSOFT SQL SERVER
TODO SOBRE BASE DE DATOS CON MICROSOFT SQL SERVER
 
Indices en SQL Server
Indices en SQL Server Indices en SQL Server
Indices en SQL Server
 
Doc1
Doc1Doc1
Doc1
 
Tema tablas de datos acces
Tema tablas de datos accesTema tablas de datos acces
Tema tablas de datos acces
 

Último

Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
JonathanCovena1
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
zulyvero07
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Francisco158360
 

Último (20)

Criterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficiosCriterios ESG: fundamentos, aplicaciones y beneficios
Criterios ESG: fundamentos, aplicaciones y beneficios
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptx
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Valoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVValoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCV
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circular
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 

11. indices en my sql

  • 1. 1 11. ÍNDÍCES EN MYSQL Para facilitarlaobtenciónde informaciónde unatablase utilizan índices.El índice de unatabla desempeñalamismafunciónque el índice de unlibro: permite encontrar datos rápidamente; en el caso de las tablas, localiza registros. Una tabla se indexaporun campo(o varios).El índice es un tipo de archivo con 2 entradas: un dato (un valor de algún campo de la tabla) y un puntero. Un índice posibilitael accesodirectoyrápidohaciendomáseficientelasbúsquedas.Siníndice, se debe recorrer secuencialmente toda la tabla para encontrar un registro. El objetivo de un índice esacelerarla recuperaciónde información.Ladesventaja es que consume espacio en el disco. La indexación es una técnica que optimiza el acceso a los datos, mejora el rendimiento acelerando las consultas y otras operaciones. Es útil cuando la tabla contiene miles de registros. Los índices se usan para varias operaciones:  para buscar registros rápidamente.  para recuperar registros de otras tablas empleando "join". Es importante identificarel oloscampos porlos que sería útil crearun índice,aquelloscampos por los cuales se realizan operaciones de búsqueda con frecuencia. Hay distintos tipos de índices:  "primary key":esel que definimoscomoclave primaria.Losvalores indexados deben ser únicos y además no pueden ser nulos. MySQL le da el nombre "PRIMARY". Una tabla solamente puede tener una clave primaria.  "index": crea un índice común, los valores no necesariamente son únicos y aceptan valores "null".Podemosdarle unnombre,si nose lodamos,se coloca unopor defecto ("key" es sinónimo de "index"). Puede haber varios por tabla.  "unique": crea un índice para los cuales los valores deben ser únicos y diferentes, aparece un mensaje de error si intentamos agregar un registro con un valor ya existente. Permite valores nulos y pueden definirse varios por tabla. Podemos darle un nombre, si no se lo damos, se coloca uno por defecto. Todos los índices pueden ser multicolumna, es decir, pueden estar formados por más de 1 campo.
  • 2. 2 Una tabla puede tenerhasta64 índices.Los nombresde índicesaceptan todos los caracteres y puedentenerunalongitudmáximade 64 caracteres. Pueden comenzar con un dígito, pero no pueden tener sólo dígitos. Una tabla puede ser indexada por campos de tipo numérico o de tipo carácter. También se puede indexar por un campo que contenga valores NULL, excepto los PRIMARY. Para ver los índices de una tabla podemos utilizar la cláusula SHOW: Hemosdichoque hay 4 tiposde índicesde losque conocemossolamentedos:laclave primaria que definimos al momentode crearuna tabla, lasclavesexternassi las hubiera y los campos a losque se laañadidola restricciónUNIQUE.El que faltaesel tipode índice común: se crea con "index",losvaloresnonecesariamentesonúnicosyaceptanvalores"null".Puede habervarios por tabla. Vamos a ver nuestra BD Neptuno y a la tabla Empleados, vamos a crear unas réplicas de Empleados con un índice en el campo cargo por el que creemos que haremos consultas frecuentemente por lo que indexar la tabla por ese campo sería útil. Podemos crear el índice:  En el momento de crear la tabla (no es una restricción o constraint, es una estructura de datos interna, ordenada, que usa el motor para optimizar y agilizar las consultas o actualizaciones sobre las tablas). Detrás de la definición de los campos colocamos "index" seguido del nombre que le daremos al índice y entre paréntesis el o los campos por los cuales se indexará dicho índice.
  • 3. 3 Si mostramoslosíndicesde estatabla:  Después de crear la tabla mediante CREATE INDEX. Para borrar ese índice tenemos que hacer un ALTER TABLE DROP INDEX y el nombre del índice. Para crear índicespor múltiple camposse listanloscamposdentrode losparéntesisseparados con comas pero realmente no es lo más utilizado, piensa que esa situación se dará fundamentalmente en el PRIMARY KEY de las relaciones N:M y ya cada campo está indexado por separado, así que no es nada habitual un índice de más de un campo. En cuanto a la informaciónque devuelve laconsultaSHOWINDEXloscamposmás importantes y realmente los únicos que necesitamos de momento son:  La columna "Table" indica de qué tabla estamos visualizando los índices.
  • 4. 4  La columna "Non_unique" indica si los valores son "no únicos"; para el índice creado por la clave primaria indica "false" (0), significa que SON únicos, no hay valores repetidosparaese campo(recuerde loaprendidosobre clave primaria); para el índice "idx_cargo" y "fk_jefe3" indica "true" (1), es decir, NO son únicos, hay valores repetidos.  La columna"Key_name"muestrael nombre del índice;parael campocorrespondiente a la clave primaria tomó el nombre "PRIMARY", "fk_jefe3" para la clave externa de jefes y el otro nombre es el que le dimos nosotros al definirlo (idx_cargo).  La columna"Column_name" muestra el nombre del campo por el que está ordenado el índice: "id" para el índice "PRIMARY", "jefe_id" para la clave externa de jefe y "cargo" para nuestro índice.  La columna"Null"indicasi permite valores nulos; el índice "PRIMARY" no los permite (NUNCA), el resto de índices en esta tabla si los permite (aparece YES). Si no debe permitirlos la definir el campo habría que indicar el NOT NULL. Vamosa ver el otrotipode índice que no hemos visto en un ejemplo, ÚNICO. Un índice único se crea con "unique",losvaloresdebenserúnicosydiferentes,aparece unmensajede error si intentamos agregar un registro con un valor ya existente. Permite valores nulos y pueden definirse varios por tabla.Podemosdarle unnombre,si no se lo damos, se coloca uno por defecto. Vamos a crear una tabla "libros" con un campo UNIQUE: La borramos y la volvemos a crear un índice sobre ese campo: Como puedes ver los índices por defecto admiten valores duplicados. Para crear un índice de tipo único debes añadir esa cláusula detrás del create: