[Dúvida] Ordenar array no banco de dados? 🤔
Fala turma
Estou criando uma aplicação que tem o seguinte funcionamento:
Em determinado momento, preciso pegar um lista ordenada no banco de dados, essa lista contém a identificação de alguns usuário.
Exemplo:
["id:usuario1", "id:usuario2", "id:usuario3"...]
Nesse momento, estou criando alguns outros registros para alguns dos usuários presentes nessa lista ordenada, e quando termino, preciso tirar o usuário da posição atual dele (que pode ser desde 1° até o último), e colocar ele no final do array.
Minha dúvida é:
Qual seria uma arquitetura mais plausível para esse senário?
- Salvar um array de Ids em texto? (Ai já teria que migrar pra Postgres)
- Fazer uma tabela NxN com IdUsuário x IdLista? (Mas ai não fica mais pesado fazer as querys?)
- Alguma outra?
Confesso que não entendi muito bem a sua necessidade, mas pelo pouco que acho que entendi, para cada usuário você quer criar um outro registro no banco de dados?
Se vc salvar como texto, vc não vai ter o relacionamento entre as tabelas, porém vc ganha em não ter que ficar criando uma terceira tabela por ex. Mas eu faria assim, eu salvaria com um pipe para fazer um split: 1|30|45
Depois no codigo receberia o esta lista, faria um split, ordenaria e montava a query de insert. Isso se nao quiser fazer por procedure no banco, se for fazer pelo banco usaria ponteiro