Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-02-2021
pablocarlos pablocarlos is offline
Miembro
 
Registrado: ene 2021
Posts: 56
Poder: 4
pablocarlos Va por buen camino
nuevo planteo


Tengo una tabla en mysql con los siguientes campos: id (autoincremental), pais(string), sorteo(int), numero(int).

necesito encontrar una fila con un determinado pais (este por parametro), dentro del pais encontrar el numero de sorteo más alto y dentro del sorteo el numero max... por ejemplo
tengo pais sorteo numero
chile 1 10
chile 1 12
chile 2 100
españa 1 2
españa 1 3
si busco por chile el resultado debería ser : chile-2-100 por que el sorteo mayor es 2 y el número mayor dentro del sorteo es 100. En el caso de españa debería encontrar españa,1,3
por que dentro de españa el numero de sorteo mayor es 1 y el número mayor en número es 3. Espero ser claro. Muchas gracias
__________________
Si supieras lo que estoy haciendo, no lo llamarías investigación.
Responder Con Cita
  #2  
Antiguo 09-02-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.098
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por pablocarlos Ver Mensaje
chile 1 10
chile 1 12
chile 2 100
españa 1 2
españa 1 3
si busco por chile el resultado debería ser : chile-2-100 por que el sorteo mayor es 2 y el número mayor dentro del sorteo es 100. En el caso de españa debería encontrar españa,1,3
por que dentro de españa el numero de sorteo mayor es 1 y el número mayor en número es 3. Espero ser claro. Muchas gracias
Ya, pero eso no responde a mi duda, imagina que tienes:
#10 chile 1 10
#11 chile 1 120
#12 chile 2 10
#13 españa 1 2
#14 españa 1 3

¿Qué debería sacar de Chile, el registro #12, porque el 2 es mayor que el 1, o debería sacar el registro #11 porque 120 es mayor que 10?
Responder Con Cita
  #3  
Antiguo 09-02-2021
pablocarlos pablocarlos is offline
Miembro
 
Registrado: ene 2021
Posts: 56
Poder: 4
pablocarlos Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Ya, pero eso no responde a mi duda, imagina que tienes:
#10 chile 1 10
#11 chile 1 120
#12 chile 2 10
#13 españa 1 2
#14 españa 1 3

¿Qué debería sacar de Chile, el registro #12, porque el 2 es mayor que el 1, o debería sacar el registro #11 porque 120 es mayor que 10?
el 12.
primero por pais, dentro de pais por numero de sorteo mayor y luego por numero mayor... en el ejemplo suyo sería el 12. Muchas gracias por estar presente!
__________________
Si supieras lo que estoy haciendo, no lo llamarías investigación.
Responder Con Cita
  #4  
Antiguo 10-02-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.098
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Entonces realmente es el mayor sorteo, el número no sirve para nada.
Responder Con Cita
  #5  
Antiguo 10-02-2021
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 20
kuan-yiu Va camino a la fama
Hay varios modos de hacerlo espero que este te sirva: Para un país todos los datos de la tupla con el mayor sorteo y dentro de este el mayor numero.
Código SQL [-]
select * from tiket a
where pais= : pais
and sorteo=(select max(sorteo) from tiket )
and numero=(select max(numero) from tiket b where a.sorteo=b.sorteo)

(Aunque yo cuantas más explicaciones leo menos entiendo)
Responder Con Cita
  #6  
Antiguo 10-02-2021
pablocarlos pablocarlos is offline
Miembro
 
Registrado: ene 2021
Posts: 56
Poder: 4
pablocarlos Va por buen camino
Cita:
Empezado por kuan-yiu Ver Mensaje
Hay varios modos de hacerlo espero que este te sirva: Para un país todos los datos de la tupla con el mayor sorteo y dentro de este el mayor numero.

(Aunque yo cuantas más explicaciones leo menos entiendo)

Mientras más se aclara mas oscurece....


Para un país todos los datos de la tupla con el mayor sorteo y dentro de este el mayor numero. Exactamente


Probaré. Gracias


Casimiro: El numero si sirve. Kuan-yiu lo resumio perfecto: para cada pais los datos con el mayor sorteo y dentro de este el mayor numero.
__________________
Si supieras lo que estoy haciendo, no lo llamarías investigación.
Responder Con Cita
  #7  
Antiguo 10-02-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.098
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
A ver, pongamos 2 casos:

#11 chile 1 120
#12 chile 2 10


Antes comentaste que ahí debe devolver el registro #12 porque el sorteo es mayor.
Y en este caso:

#11 chile 2 10
#12 chile 1 120


Debe devolver el registro #11 porque el sorteo es mayor.

O sea, lo dicho, el número no sirve para nada.

La única opción posible para devolver el número mayor es que existan sorteos repetidos:

#11 chile 1 10
#12 chile 1 120


En ese caso devolvería el #12, pero no creo que haya sorteos repetidos, así que insisto en que el número no sirve para nada
Responder Con Cita
  #8  
Antiguo 10-02-2021
pablocarlos pablocarlos is offline
Miembro
 
Registrado: ene 2021
Posts: 56
Poder: 4
pablocarlos Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
En ese caso devolvería el #12, pero no creo que haya sorteos repetidos, así que insisto en que el número no sirve para nada
hay sorteos repetidos. En un sorteo entran varios numeros por lo que el sorteo 3 (como todos los números de sorteos) tendrá un número del 1 al 1000000.
por eso el resultado debe ser un pais, dentro de ese pais un sorteo mayor y dentro de este un numero mayor.

Gracias por tu interés. Saludos
__________________
Si supieras lo que estoy haciendo, no lo llamarías investigación.
Responder Con Cita
  #9  
Antiguo 10-02-2021
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 922
Poder: 23
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Estimado PabloCarlos

Desde el principio no quedó claro su problema, si me permite, le aconsejo para futuras consultas aportar mas antecedentes.

Bueno tomando como base lo que han dicho los compañeros del foro, le propongo la siguiente consulta que creo puede responder a su problema.

Utilicé los datos aportados por Casimiro Notevi...

Código SQL [-]
select A.id_tiquet,
       A.pais,
       B.sorteo,
       B.numero

from tickets A,
     (
     select tickets.pais,
            tickets.sorteo,
            max(tickets.numero) numero
     from tickets,
          (select tickets.pais,
                  max(tickets.sorteo) sorteo
           from tickets
           where tickets.pais= : pais
           group by 1
           ) Sorteos
     
     where tickets.pais=Sorteos.pais and
           tickets.sorteo=Sorteos.sorteo
     group by 1,2
     ) B
where A.pais=B.pais and
      A.sorteo=B.sorteo and
      A.numero=B.numero

Espero le ayuda o aporte ideas para que logre la solución....
Saludos cordiales
Responder Con Cita
  #10  
Antiguo 11-02-2021
pablocarlos pablocarlos is offline
Miembro
 
Registrado: ene 2021
Posts: 56
Poder: 4
pablocarlos Va por buen camino
Cita:
Empezado por cloayza Ver Mensaje
Estimado PabloCarlos
Bueno tomando como base lo que han dicho los compañeros del foro, le propongo la siguiente consulta que creo puede responder a su problema.
De lujo!!!! Muchas gracias!! Saludos
__________________
Si supieras lo que estoy haciendo, no lo llamarías investigación.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
extracción en JSON Ulises PHP 9 16-10-2018 20:46:28
Extracción XBRL cincosoft Varios 0 16-12-2008 10:53:35
Extraccion de datos de un LISTVIEW ebreton31 Varios 2 22-11-2006 23:05:46
Extracción de datos en campos de fecha dec Trucos 0 29-06-2006 23:07:25
Extracción de parte de una cadena Arkaz Varios 3 02-11-2005 22:33:36


La franja horaria es GMT +2. Ahora son las 14:11:36.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi