el mayor valor de una combinacion de campos

22/06/2005 - 10:46 por .·:m·a·r·l·a:·. | Informe spam
Hola a todos:

pues explico el titulo

si tengo la tabla tal que

campo1 campo2 campo3
3 5 pepe
5 3 juan

como hago una comsulta para obtrner el maximo de la combinacion
(campo1,campo2) (siendo campo 1 mas importante que campo 2)

si hago

select max(campo1), max(campo2)

me devuelve 5,5

lo que quiero es que me devuelva, poniendo ejemplos (ya se que la sintaxis
no es la correcta)

select max(campo1, campo2), campo3 -> 5,3,juan
select max(campo2, campo1), campo3 -> 5,3,pepe

hay alguna forma de hacer esto ??

gracias por adelantado

Preguntas similare

Leer las respuestas

#1 Maxi
22/06/2005 - 14:15 | Informe spam
Hola, es una variable que campo es mas importante? o podes tener 2
procedimientos?

Salu2
Maxi


".·:m·a·r·l·a:·." escribió en el mensaje
news:
Hola a todos:

pues explico el titulo

si tengo la tabla tal que

campo1 campo2 campo3
3 5 pepe
5 3 juan

como hago una comsulta para obtrner el maximo de la combinacion
(campo1,campo2) (siendo campo 1 mas importante que campo 2)

si hago

select max(campo1), max(campo2)

me devuelve 5,5

lo que quiero es que me devuelva, poniendo ejemplos (ya se que la sintaxis
no es la correcta)

select max(campo1, campo2), campo3 -> 5,3,juan
select max(campo2, campo1), campo3 -> 5,3,pepe

hay alguna forma de hacer esto ??

gracias por adelantado


Respuesta Responder a este mensaje
#2 Alejandro Mesa
22/06/2005 - 14:33 | Informe spam
Convierte los numeros a string, concatenalos y conviertelos a bigint, luego
sacas el maximo.

select *
from t1
where cast(ltrim(campo1) + ltrim(campo2) as bigint) = (select
max(cast(ltrim(campo1) + ltrim(campo2) as bigint)
) from t1)

- o

select top 1 with ties *
from t1
order by cast(ltrim(campo1) + ltrim(campo2) as bigint) desc


AMB



".·:m·a·r·l·a:·." wrote:

Hola a todos:

pues explico el titulo

si tengo la tabla tal que

campo1 campo2 campo3
3 5 pepe
5 3 juan

como hago una comsulta para obtrner el maximo de la combinacion
(campo1,campo2) (siendo campo 1 mas importante que campo 2)

si hago

select max(campo1), max(campo2)

me devuelve 5,5

lo que quiero es que me devuelva, poniendo ejemplos (ya se que la sintaxis
no es la correcta)

select max(campo1, campo2), campo3 -> 5,3,juan
select max(campo2, campo1), campo3 -> 5,3,pepe

hay alguna forma de hacer esto ??

gracias por adelantado



Respuesta Responder a este mensaje
#3 Alejandro Mesa
22/06/2005 - 16:01 | Informe spam
La solucion anterior no esta de acuerdo a tus requeriminetos.

> como hago una comsulta para obtrner el maximo de la combinacion
> (campo1,campo2) (siendo campo 1 mas importante que campo 2)



select top 1 with ties c1, c2, c3
from t1
order by c1 desc, c2 desc


AMB

"Alejandro Mesa" wrote:

Convierte los numeros a string, concatenalos y conviertelos a bigint, luego
sacas el maximo.

select *
from t1
where cast(ltrim(campo1) + ltrim(campo2) as bigint) = (select
max(cast(ltrim(campo1) + ltrim(campo2) as bigint)
) from t1)

- o

select top 1 with ties *
from t1
order by cast(ltrim(campo1) + ltrim(campo2) as bigint) desc


AMB



".·:m·a·r·l·a:·." wrote:

> Hola a todos:
>
> pues explico el titulo
>
> si tengo la tabla tal que
>
> campo1 campo2 campo3
> 3 5 pepe
> 5 3 juan
>
> como hago una comsulta para obtrner el maximo de la combinacion
> (campo1,campo2) (siendo campo 1 mas importante que campo 2)
>
> si hago
>
> select max(campo1), max(campo2)
>
> me devuelve 5,5
>
> lo que quiero es que me devuelva, poniendo ejemplos (ya se que la sintaxis
> no es la correcta)
>
> select max(campo1, campo2), campo3 -> 5,3,juan
> select max(campo2, campo1), campo3 -> 5,3,pepe
>
> hay alguna forma de hacer esto ??
>
> gracias por adelantado
>
>
>
Respuesta Responder a este mensaje
#4 .·:m·a·r·l·a:·.
22/06/2005 - 22:14 | Informe spam
muchas gracias
y perdonar por la ortografia en el anterior mensaje

no se me habia ocurrido hacer el top 1, por supuesto

gracias de nuevo


"Alejandro Mesa" wrote in message
news:
La solucion anterior no esta de acuerdo a tus requeriminetos.

> > como hago una comsulta para obtrner el maximo de la combinacion
> > (campo1,campo2) (siendo campo 1 mas importante que campo 2)

select top 1 with ties c1, c2, c3
from t1
order by c1 desc, c2 desc


AMB

"Alejandro Mesa" wrote:

> Convierte los numeros a string, concatenalos y conviertelos a bigint,


luego
> sacas el maximo.
>
> select *
> from t1
> where cast(ltrim(campo1) + ltrim(campo2) as bigint) = (select
> max(cast(ltrim(campo1) + ltrim(campo2) as bigint)
> ) from t1)
>
> - o
>
> select top 1 with ties *
> from t1
> order by cast(ltrim(campo1) + ltrim(campo2) as bigint) desc
>
>
> AMB
>
>
>
> ".·:m·a·r·l·a:·." wrote:
>
> > Hola a todos:
> >
> > pues explico el titulo
> >
> > si tengo la tabla tal que
> >
> > campo1 campo2 campo3
> > 3 5 pepe
> > 5 3 juan
> >
> > como hago una comsulta para obtrner el maximo de la combinacion
> > (campo1,campo2) (siendo campo 1 mas importante que campo 2)
> >
> > si hago
> >
> > select max(campo1), max(campo2)
> >
> > me devuelve 5,5
> >
> > lo que quiero es que me devuelva, poniendo ejemplos (ya se que la


sintaxis
> > no es la correcta)
> >
> > select max(campo1, campo2), campo3 -> 5,3,juan
> > select max(campo2, campo1), campo3 -> 5,3,pepe
> >
> > hay alguna forma de hacer esto ??
> >
> > gracias por adelantado
> >
> >
> >
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida