Eu tenho uma consulta como esta:
SELECT
cs1.id,
cs1.uid,
cs1.title,
cs1.description
FROM related_chat_session rcs1
INNER JOIN chat_session cs1
ON cs1.id = rcs1.related_chat_session_id
WHERE
rcs1.chat_session_id = $1 AND
cs1.discoverable = true
ORDER BY random()
LIMIT 10
No momento, ele retornará o resultado sempre em ordem aleatória. No entanto, quero ajustar a lógica de forma que a aleatoriedade seja estável com base em uma semente, onde a semente é (por exemplo) o dia da semana.
ou seja, o resultado seria que os resultados de segunda-feira fossem listados em uma ordem, os de terça-feira em outra, etc.
Como eu faço isso?
Experimente esta
ORDER BY
cláusula:As funções hash retornam valores determinísticos, mas aparentemente aleatórios.