Funcion Moda

03/10/2007 - 00:00 por Juan Huachaca Gomez | Informe spam
Amigos tengo lo siguiente:

a 1.20
a 1.20
a 1.30
a 1.20
b 1.20
b 1.50
b 1.50
c 1.10
c 1.10
d 1.30
e 1.20
e 1.30

Lo que necesito es los precios moda de esos items:

a 1.20
b 1.50
c 1.10
d 1.30

para el caso de e como no hay moda tendria que ser el promedio es decir

e 1.25

Como podria hacer esto??? mil gracias por su ayuda !!!!!!!!!!!!!

Salu2

Juan Huachaca Gomez
Lima - Peru
Celular: (511) 9352-1798
msn: j_huachaca79@yahoo.es

Preguntas similare

Leer las respuestas

#6 Isaias
03/10/2007 - 18:16 | Informe spam
De nada

Los derechos reservados son de "Andres95", Foros del Web

Saludos
IIslas


"Juan Huachaca Gomez" wrote:

Mil gracias Isaias, me sirvio de mucho !!!!!!!

Salu2

Juan Huachaca Gomez
Lima - Peru
Celular: (511) 9352-1798
msn:
"Isaias" escribió en el mensaje
news:
> Si es la que mas se REPITE:
>
> Select Id,
> (Select Top 1 Valor
> From MiTabla
> where Id = T.Id
> group by Id, Valor
> order by count(1) desc) Valor
> From MiTabla T
> Group by Id
>
> Suponiendo que los campos de tu tabla sean Id y Valor
>
>
> Saludos
> IIslas
>
>
> "Juan Huachaca Gomez" wrote:
>
>> La funcion Median o mediana te calcula la mediana de un rango es decir el
>> promedio, la moda es aquel valor que mas se repite para un determino id.
>>
>> Salu2
>>
>> Juan Huachaca Gomez
>> Lima - Peru
>> Celular: (511) 9352-1798
>> msn:
>> "Alejandro Mesa" escribió en el
>> mensaje news:
>> > Hola Juan,
>> >
>> > Disculpame por la pregunta, pero pudieras explicar que es un precio
>> > moda?
>> >
>> > En caso de estar relacionado con la funcion MEDIAN, te paso un articulo
>> > donde se explica con toda claridad como hacerlo.
>> >
>> > Calculating the Median Gets Simpler in SQL Server 2005
>> > http://www.sqlmag.com/Articles/Inde...ab=Article
>> >
>> >
>> > AMB
>> >
>> >
>> > "Juan Huachaca Gomez" wrote:
>> >
>> >> Amigos tengo lo siguiente:
>> >>
>> >> a 1.20
>> >> a 1.20
>> >> a 1.30
>> >> a 1.20
>> >> b 1.20
>> >> b 1.50
>> >> b 1.50
>> >> c 1.10
>> >> c 1.10
>> >> d 1.30
>> >> e 1.20
>> >> e 1.30
>> >>
>> >> Lo que necesito es los precios moda de esos items:
>> >>
>> >> a 1.20
>> >> b 1.50
>> >> c 1.10
>> >> d 1.30
>> >>
>> >> para el caso de e como no hay moda tendria que ser el promedio es
>> >> decir
>> >>
>> >> e 1.25
>> >>
>> >> Como podria hacer esto??? mil gracias por su ayuda !!!!!!!!!!!!!
>> >>
>> >> Salu2
>> >>
>> >> Juan Huachaca Gomez
>> >> Lima - Peru
>> >> Celular: (511) 9352-1798
>> >> msn:
>> >>
>> >>
>> >>
>>
>>
>>



Respuesta Responder a este mensaje
#7 Alejandro Mesa
03/10/2007 - 22:30 | Informe spam
Hola Isaias,

Esa solucion no toma en cuenta valores con igual distribucion y por lo tanto
no es
deterministica (Deterministic), osea, que puede dar diferente resultado
aunque se ejecute con la misma data. Fijate en el [Id] = 'e', solo tiene dos
valores, cual es el que mas se repite?

Se debe usar otra columna para romper empates o seleccionar todos los
valores con distribucion igual a la maxima.

SELECT
Id,
(
Select Top 1 Valor
From #t
where Id = T.Id
group by Id, Valor
order by count(1) DESC, [Valor] ASC
) Valor
From #t AS T
Group by Id

SELECT DISTINCT
[Id],
[Valor]
FROM
#t AS a
WHERE
[Valor] IN (
SELECT TOP 1 WITH TIES
[Valor]
FROM
#t AS b
WHERE
b.[Id] = a.[Id]
GROUP BY
[Id],
[Valor]
ORDER BY
COUNT(*) DESC
)
ORDER BY
[Id],
[Valor]
go


AMB

"Isaias" wrote:

Si es la que mas se REPITE:

Select Id,
(Select Top 1 Valor
From MiTabla
where Id = T.Id
group by Id, Valor
order by count(1) desc) Valor
From MiTabla T
Group by Id

Suponiendo que los campos de tu tabla sean Id y Valor


Saludos
IIslas


"Juan Huachaca Gomez" wrote:

> La funcion Median o mediana te calcula la mediana de un rango es decir el
> promedio, la moda es aquel valor que mas se repite para un determino id.
>
> Salu2
>
> Juan Huachaca Gomez
> Lima - Peru
> Celular: (511) 9352-1798
> msn:
> "Alejandro Mesa" escribió en el
> mensaje news:
> > Hola Juan,
> >
> > Disculpame por la pregunta, pero pudieras explicar que es un precio moda?
> >
> > En caso de estar relacionado con la funcion MEDIAN, te paso un articulo
> > donde se explica con toda claridad como hacerlo.
> >
> > Calculating the Median Gets Simpler in SQL Server 2005
> > http://www.sqlmag.com/Articles/Inde...ab=Article
> >
> >
> > AMB
> >
> >
> > "Juan Huachaca Gomez" wrote:
> >
> >> Amigos tengo lo siguiente:
> >>
> >> a 1.20
> >> a 1.20
> >> a 1.30
> >> a 1.20
> >> b 1.20
> >> b 1.50
> >> b 1.50
> >> c 1.10
> >> c 1.10
> >> d 1.30
> >> e 1.20
> >> e 1.30
> >>
> >> Lo que necesito es los precios moda de esos items:
> >>
> >> a 1.20
> >> b 1.50
> >> c 1.10
> >> d 1.30
> >>
> >> para el caso de e como no hay moda tendria que ser el promedio es decir
> >>
> >> e 1.25
> >>
> >> Como podria hacer esto??? mil gracias por su ayuda !!!!!!!!!!!!!
> >>
> >> Salu2
> >>
> >> Juan Huachaca Gomez
> >> Lima - Peru
> >> Celular: (511) 9352-1798
> >> msn:
> >>
> >>
> >>
>
>
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida