MySQL

  1. #1
    Entrenador de Gitanos Avatar de ErGitaniko
    Registro
    26 Jul, 13
    Ubicación
    Calle gualabi sidnei 69
    Mensajes
    329
    Me gusta (Dados)
    436
    Me gusta (Recibidos)
    33

    MySQL

    Buenas necesito ayuda, en una formula de MySQL Query Browser. Necesito mostrar las iniciales de los nombres de los alumnos. Pongo un ejemplo Maria Marisol, Hernández y tiene que quedarme así: M.M.H es decir puesto las iniciales y con puntos. No sé si logro explicarme, lo necesito la formula para hoy ya que estoy a tope con SQL para terminar mi módulo. Una ayudita aquí para la educación vendría bien

  2. #2
    AutoBanned Avatar de Usuario459230816
    Registro
    08 Feb, 14
    Mensajes
    5,039
    Me gusta (Dados)
    3776
    Me gusta (Recibidos)
    1855
    ni idea,suerte

  3. #3
    AutoBanned Avatar de Call Drogo
    Registro
    28 Jul, 13
    Mensajes
    312
    Me gusta (Dados)
    8
    Me gusta (Recibidos)
    56
    @ErGitaniko Un par de preguntas:

    ¿MySQL Query Browser es como phpmyadmin no?

    ¿Cómo guardas los nombres, cómo es la estructura de la tabla? Ponlo si puedes.
    Última edición por Call Drogo; 10/02/2014 a las 18:50

  4. #4
    ForoParalelo: Miembro Avatar de ppdeluxe
    Registro
    07 Nov, 13
    Ubicación
    Liliputin
    Mensajes
    31
    Me gusta (Dados)
    3
    Me gusta (Recibidos)
    5
    Una pregunta si es divido en tres columnas por ejemplo, nombre , apellido1 y apellido 2.

    SUBSTRING(cadena,posicion,longitud)

    select substring(nombre,1,1),substring(apellido1,1,1),sub string(2,1,1) from nombredelatabla

    Revisa esta documentacion:

    Curso MySQL, funci?n "SUBSTRING"

  5. #5
    ForoParalelo: 100tifico Avatar de ElTanoPasman
    Registro
    29 Sep, 13
    Ubicación
    XXXG-00W0
    Mensajes
    15,556
    Me gusta (Dados)
    7042
    Me gusta (Recibidos)
    3317
    Buf shur, yo todavia estoy empezando y aunque ya hemos dado muchas cosas (mi profesora va como una moto y nos hace trabayar fuerte) a eso no hemos llegado todavia.
    Que ciclo estas haciendo? Administracion de Sistemas Informaticos en Red?

  6. #6
    ForoParalelo: Miembro Avatar de ppdeluxe
    Registro
    07 Nov, 13
    Ubicación
    Liliputin
    Mensajes
    31
    Me gusta (Dados)
    3
    Me gusta (Recibidos)
    5
    Hice un ciclo formativo superior de administración de sistemas informáticos y redes, y ahora estoy cursando ing. Informática a través de la UOC.
    En el ciclo no aprendí un carajo xD , pero en mi curro si , actualmente trabajo para IBM .

    Mucho animo tio! Si necesitas algo mas y te puedo ayudar por aquí estoy.

  7. #7
    ForoParalelo: Miembro Avatar de Avatarx
    Registro
    03 Dec, 13
    Mensajes
    6,871
    Me gusta (Dados)
    216
    Me gusta (Recibidos)
    1795
    Primero deberias crearte una funcion tokerizen o split, para dividir una cadena en token por el caracter espacio, luego ya solo tendrias contar cuantas veces aparece un espacio en la cadena y con un for sacar el primer caracter de cada token con la funcion left.

  8. #8
    ForoParalelo: Miembro Avatar de Avatarx
    Registro
    03 Dec, 13
    Mensajes
    6,871
    Me gusta (Dados)
    216
    Me gusta (Recibidos)
    1795
    Cita Iniciado por ppdeluxe Ver mensaje
    El mensaje está oculto porque el usuario está en tu lista de ignorados.
    Una pregunta si es divido en tres columnas por ejemplo, nombre , apellido1 y apellido 2.

    SUBSTRING(cadena,posicion,longitud)

    select substring(nombre,1,1),substring(apellido1,1,1),sub string(2,1,1) from nombredelatabla

    Revisa esta documentacion:

    Curso MySQL, funci?n "SUBSTRING"
    Yo he entendido que esta todo en un mismo campo, si no el ejercicio no tiene chicha alguna, sacando el primer caracter de cada campo con left e ir concatenandolos ya esta todo hecho. Aunque bueno, de todos modos un nombre puede ser compuesto asi que...

  9. #9
    ForoParalelo: Miembro Avatar de ppdeluxe
    Registro
    07 Nov, 13
    Ubicación
    Liliputin
    Mensajes
    31
    Me gusta (Dados)
    3
    Me gusta (Recibidos)
    5
    Es que en el caso de que el nombre fuera compuesto en un solo campo string, debería hacer uso ya de POSTGREST SQL, buscando donde están los espacios dividendolo en 3 o mas variables (ARRAY de variables String) y después pasando la función SUBSTRING(cadena,posición,longitud) , pero eso ya es tarea tuya tío xD , paso de ponerme hacer ese código aunque me llama la atención bastante.

    Aunque el principal problema que tiene es que puede ser:

    NOMBRE APELLIDO APELLIDO
    NOMBRE COMPUESTO APELLIDO APELLIDO
    NOMBRE COMPUESTO APELLIDO COMPUESTO APELLIDO
    NOMBRE COMPUESTO APELLIDO COMPUESTO APELLIDO COMPUESTO
    ETC ...

    Pero también se podría guardar en un ARRAY y después contar cuantos elementos tiene y con un bucle sacar con la funcion CONCAT(SUBSTRING(ARRAY1,posicion,longitud) o incrementando la variable :

    VARIABLE = VARIABLE + SUBSTRING(ARRAY1,posicion,longitud)

    Pero se me esta yendo la pinza taco xD

  10. #10
    ForoParalelo: Miembro Avatar de horticultor
    Registro
    17 May, 13
    Ubicación
    La huerta
    Mensajes
    581
    Me gusta (Dados)
    369
    Me gusta (Recibidos)
    147
    Si todo se guarda en el mismo campo y no hay nombres compuestos, se puede guarrear y hacerlo así:


    concat(substr(CAMPO,1,1),'.',substr(CAMPO,locate(' ',CAMPO)+1,1),'.',substr(CAMPO,locate(' ',CAMPO, locate(' ',CAMPO)+1)+1,1),'.')

  11. #11
    Entrenador de Gitanos Avatar de ErGitaniko
    Registro
    26 Jul, 13
    Ubicación
    Calle gualabi sidnei 69
    Mensajes
    329
    Me gusta (Dados)
    436
    Me gusta (Recibidos)
    33
    Sí shurmano, aunque ya lo he terminado y tiene telita, pero con ganas se saca.

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •