![]() |
Extracción de campos
Saludos. Tengo una tablas en sql y necesito encontrar tres campos. Numero, Sorteo, Pais, Donde pais se esta pasando por parametro.
Escribo esto --> Obvio que no trae lo que necesito. El numero y sorteo debe ser el valor mayor dentro de la tabla filtrando por pais, osea Chile sorte 3 numero 49 Donde todos los registros de la tabla encuentra a todos los de Chile y dentro de ese pais el sorteo max y el numero max. Obvio que no funciona como es debido. Se agradece alguna sugerencia. Saludos! |
No sé si entendí bien los datos de la tabla
|
Gracias Kuan_yiu
Haciendo pruebas con tres paises no da el resultado deseado Pais "Argentina" bien Pais "Chile" bien Pais "Uruguay" resultado numero max "1000000" sorte "2" pais "Argentina" cuando debería ser numero max 68 sorteo 2 pais Uruguay. Sigo probando... |
Gracias Kuan_yiu Haciendo pruebas con tres paises no da el resultado deseado Pais "Argentina" bien Pais "Chile" bien Pais "Uruguay" resultado numero max "1000000" sorte "2" pais "Argentina" cuando debería ser numero max 68 sorteo 2 pais Uruguay. Sigo probando... Creo que debería filtrar primero por pais, luego dentro del país por max(sorteo) y dentro de país y sorteo y desde los valores encontrados mostrar el max(numero). |
Pon un ejemplo de los datos y exactamente la línea que quieres conseguir.
|
Cita:
Ejemplo tengo los siguientes datos pais uruguay (obvio hay otros paises) sorteos 1, 2, 3 (debería filtrar por el 3) numeros 1,2 ....1002 sorteo 2, números 1,2..1000 sorteo 3, (debería mostrar sorteo 3 y el numero 1000). Cerrando, con el parametro 'Uruguay' debería traer sorteo 3 numero 1000. Gracias por responder. Saludos |
Si he entendido bien quieres la línea completa. Para el país indicado el número máximo de cada sorteo.
Como no indicas que motor de BD usas he tratado de hacerlo sin funciones especiales. |
Cita:
|
Es que después de un montón de mensajes no queda exactamente claro de lo que necesitas, y el motivo es que siempre se dice lo que se está haciendo, pero no realmente lo que se quiere hacer. Lo importante aquí es la estructura de las tablas involucradas (al menos los campos involucrados) y lo que se quiere conseguir.
Siempre aconsejo leer este hilo donde se explica cómo hacer mejor la pregunta, para obtener una respuesta más acertada. |
Cita:
Veamos.... quiero filtrar la tabla tiket con campos pais, sorteo, numero, por un pais dentro de ese pais filtrar por max(sorteo) y dentro de ese sorteo por max(numero). bd mysql pais = Chile chile = sorteo 3 chile, sorteo 3 = numero 4 resultado chile, 3, 4 (pais, sorteo(el mayor), numero(el mayor)) Y no se como explicar mejor :( |
Cita:
Cita:
Cita:
Cita:
Pero, bien, me parece que ya está más claro, lo que tienes es algo así: ![]() Y quieres conseguir algo así como: 7 | CHILE | 3 | 16 ¿Es eso? |
Cita:
Gracias por tratar de entender |
Otra duda, si existe esto:
Cita:
|
Cita:
|
Ya estamos, no se entiende :confused::confused::confused:
|
Cita:
la consulta deberia devolver el id 285 chile, sorteo 2 numero 45 por que dentro de chile el sorteo mayor es el 2 y dentro del sorteo mayor (2) el numero mayor es el 45... Ya con imagen creo no confundir. Gracias |
No me permitio subir imagen
|
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 |
Cita:
#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? |
Cita:
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! |
Entonces realmente es el mayor sorteo, el número no sirve para nada.
|
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) |
Cita:
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. |
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 :) |
Cita:
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 |
Es lo que tiene el no explicar bien el problema, que tenemos que dar palos de ciego hasta que poco a poco vamos obteniendo toda la información ;)
Bien, entonces sí te sirve lo último publicado por kuan-yiu ^\||/ |
Cita:
|
Bueno. Como siempre cuando sale lo que uno busca, escribo la solución
Gracias a todos los que respondieron que de alguna u otra forma han logrado que obtuviera los resultados buscados... Pido disculpas si "queme" alguna neurona por mis malas explicaciones, "cuando uno sabe lo que quiere cree que el mundo entenderá el problema". Tambien aprendí que debo plantear la duda lo más clara posible y con todos los datos para evitar --> Diria Casimiro "dar palos de ciego"... Gracias y feliz semana a todos! |
Me alegro de que por fin lo hayas solucionado ^\||/^\||/^\||/
|
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...
Espero le ayuda o aporte ideas para que logre la solución.... Saludos cordiales |
Estimado PabloCarlos, está seguro que la consulta arroja los resultados esperados...Tengo mis dudas al respecto...
Cita:
|
Cita:
|
| La franja horaria es GMT +2. Ahora son las 02:34:11. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi