Tempo de época aleatório em SQL

Salvamos todas as datas como bigint por alguns motivos que estão fora do assunto.

Para testar alguns relatórios, eu queria preencher um campo de data com datas aleatórias entre uma data de início e uma data de término específicas.

update mytable set some_date_field =  1372629600 + round(random() * 2592000) + 1

Na consulta acima, o primeiro número 1372629600 é minha primeira data possível.
O segundo número, 2592000, é a diferença entre meu primeiro encontro e o último.
Isso efetivamente me dá datas aleatórias entre o primeiro dia do mês e o último dia do mês.