Sim, existem várias razões pelas quais esse pode ser o melhor design.
Você pode ter um relacionamento de herança / extensão, por exemplo, você pode ter uma User
tabela e, em seguida, uma Administrator
tabela com mais campos. Ambas as tabelas podem ter uma chave primária de ID do usuário (e, portanto, ter um relacionamento 1: 1), mas nem todos os usuários terão um registro na Administrator
tabela. Você precisaria de algo semelhante se estiver suportando um fluxo de trabalho, por exemplo, uma ScheduledTask
tabela e uma CompletedTask
tabela.
Você pode querer ter uma tabela leve para dados comumente usados User
e, em seguida, uma tabela maior para detalhes que você não precisa com muita frequência UserDetails
. Isso pode melhorar o desempenho, pois você poderá ajustar mais registros em uma única página de dados.
Você pode querer permissões diferentes para as tabelas, por exemplo, User
eUserCredentials
Você pode querer estratégias de backup diferentes e, portanto, colocar duas tabelas em partições diferentes, por exemplo, Transaction
eTransactionArchive
Você pode precisar de mais colunas do que as suportadas em uma única tabela, por exemplo, se houver muitas colunas de texto grandes que você precise indexar e sua plataforma de banco de dados estiver limitada a páginas de dados de 4K ou o que você quiser.