From: | Eduardo Arenas <edomax(at)gmail(dot)com> |
---|---|
To: | Hellmuth Vargas <hivs77(at)gmail(dot)com> |
Cc: | Francisco Olarte <folarte(at)peoplecall(dot)com>, Lista Postgres ES <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: registros aleatorios con al menos de una categoría |
Date: | 2019-05-14 16:10:54 |
Message-ID: | CAEe4h9qKWC4T-3xFKpqzwvssR0kmTBwpWs4oNxM8pMN2vo7a-w@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
esto puede servir :)
with consulta as (
select generate_series(1,21) as q
)
select q,substr(ran::Text,1,1)
from
(
select *
,random()*7+1 as ran
from consulta
) as a
El mar., 14 de may. de 2019 a la(s) 11:51, Hellmuth Vargas (hivs77(at)gmail(dot)com)
escribió:
> Hola Lista
>
> Disculpe si no fui muy claro: tenemos una tabla con miles de registros y
> entre las comunas esta el día de la semana (lunes, martes miércoles....).
> Requerimos obtener una muestra aleatoria de los registros de la tabla (el
> porcentaje puede variar) donde se garantice que siempre este al menos una
> vez cada día de la semana, no indican que sea distribución uniforme de los
> mismos, solo que estén presentes todos en la muestra y esto debe generarse
> con SQL (ni siquiera PL/pgSQL). en el caso extremo que saquen 7 registros
> de muestra, deberían estar los 7 días de la semana representados.
> Gracias por su tiempo y aportes lista
>
>
> El mar., 14 de may. de 2019 a la(s) 10:32, Francisco Olarte (
> folarte(at)peoplecall(dot)com) escribió:
>
>> Hellmuth:
>>
>> On Tue, May 14, 2019 at 4:29 PM Hellmuth Vargas <hivs77(at)gmail(dot)com> wrote:
>> > Tengo una tabla con unos datos por día de la semana, la tabla tiene
>> miles de registros, necesitamos sacar valores aleatorios de esta tabla
>> pero al menos debe haber uno por cada día de la semana, obvio el mínimo
>> tamaño de la muestra es 7. Como me sugieren hacer esto? de antemano
>> gracias lista
>>
>> Lo describes demasiado por encima para que se pueda decir nada.
>> Suponemos que habra datos de todos los dias de la semana, pero ni
>> siquiera dices si el dia de la semana se ha de sacar de un campo "dia
>> de la semana" , o cuantos registros tienes que sacar, o si, aparte de
>> que haya uno por cada dia de la semana al menos, quieres algun otro
>> tipo de distribucion en los dias de semana ( i.e., para 700 quieres
>> mas o menos 100 de cada? ).
>>
>> Asi a pelo, con lo que dices, te diria, saca 7 aleatorios
>> condicionados al dia de la semana ( un random entre los lunes, otro
>> entre los martes, otro entre los miercoles, ... ) y N-7 totalmente
>> random. O, en enteros, N/7 +1 de los N%7 primeros dias de la semana y
>> N/7 del resto. Hay mil formas, con tan pocas condiciones es
>> complicado. Y tampoco nos dices muchos si quieres sacar un numero
>> exacto de muestras o solo aproximado ( que se hacen de distinta forma
>> si quieres evitar sesgos en la distribucion ).
>>
>>
>> Francisco Olarte.
>>
>
>
> --
> Cordialmente,
>
> Ing. Hellmuth I. Vargas S.
> Esp. Telemática y Negocios por Internet
> Oracle Database 10g Administrator Certified Associate
> EnterpriseDB Certified PostgreSQL 9.3 Associate
>
>
--
Eduardo Arenas
+56 9 6629 1618
From | Date | Subject | |
---|---|---|---|
Next Message | Francisco Olarte | 2019-05-14 17:09:17 | Re: registros aleatorios con al menos de una categoría |
Previous Message | Hellmuth Vargas | 2019-05-14 15:51:11 | Re: registros aleatorios con al menos de una categoría |