Re: registros aleatorios con al menos de una categoría

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

In response to

Responses

Browse pgsql-es-ayuda by date

  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