Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

[SOLUCIONADO] Ordenamiento personalizado

Estas en el tema de Ordenamiento personalizado en el foro de Mysql en Foros del Web. Hola, soy nuevo en el foro y tengo un problema con mysql, de antemano ojalá puedan ayudarme. Tengo una base de datos "Biblioteca" que tiene ...
  #1 (permalink)  
Antiguo 23/11/2013, 21:47
 
Fecha de Ingreso: noviembre-2013
Mensajes: 2
Antigüedad: 11 años
Puntos: 0
Pregunta Ordenamiento personalizado

Hola, soy nuevo en el foro y tengo un problema con mysql, de antemano ojalá puedan ayudarme.

Tengo una base de datos "Biblioteca" que tiene tres tablas autor - documento - escribe. la pregunta es respecto a la tabla "documento" que tiene los siguientes campos:
id_doc (11,12,13,...)
titulo(quijote, Intr a la ciencia, gramática,...)
tipo_doc(novela, divulgativo,técnico,...)

quisiera realizar una consulta donde se ordene según "tipo_doc", he usado ORDER BY, pero solo tiene asc, desc, lo que quiero es que al ordenar primero me seleccione los de tipo novela seguido de divulgativo, técnico, etc (en ese orden),
Luego hacer otra consulta donde el orden sería el siguiente:
novela-técnico, divulgativo, etc... en síntesis, personalizar el ordenamiento.
  #2 (permalink)  
Antiguo 24/11/2013, 03:44
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 8 meses
Puntos: 300
Respuesta: Ordenamiento personalizado

Usa ORDER BY FIELD()
Código MySQL:
Ver original
  1. ORDER BY FIELD(tipo_doc, 'novela', 'divulgativo', 'técnico'), titulo

pero, ojo, si no añades algún valor será el primero en salir, pues lo entiende como nulo y nulo aparece en el ORDER ascendente antes que cualquier otro carácter.

Naturalmente, tras el orden por ese criterio, puedes ordenar por otro. Te lo he puesto por titulo.
  #3 (permalink)  
Antiguo 24/11/2013, 10:19
 
Fecha de Ingreso: noviembre-2013
Mensajes: 2
Antigüedad: 11 años
Puntos: 0
De acuerdo Respuesta: Ordenamiento personalizado

Muchas gracias!!, me sirvió, aun estoy muy verde en esto de base de datos

Etiquetas: campo, ordenamiento, personalizado, sql, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:17.