Mysql sintaxe SQL

Tenho duas tabelas, uma de endereços e outra de usuários, quero selecionar um usuário através do cpf e exibir o seu endereço. Como é a sintaxe SQL para esse resultado?

create database controle_enderecos_de_usuarios;

create table usuarios (
id integer PRIMARY KEY auto_increment,
nome varchar(100) not null,
email varchar(100) not null,
CPF varchar(14) not null,
data_de_nascimento date not null
);

create table enderecos (
id integer primary key auto_increment,
lograudoro varchar(150) not null,
numero integer not null,
complemento varchar(10) not null,
bairro varchar(50) not null,
cidade varchar(50) not null,
estado varchar(50) not null,
CEP varchar(10) not null
);

Não vejo nenhuma relação nessas tabelas entre usuarios e enderecos.

Como é essa relação?

  1. Se um usuário tem um endereço e um endereço pertence apenas a um usuário, tens de adicionar uma chave estrangeira de qualquer uma das tabelas para a outra (eu faria id_endereco em usuarios)

  2. Se um usuário tem um endereço mas um endereço pode pertencer a vários usuários, tens de adicionar uma chave estrangeira em usuarios para enderecos (a mesma id_endereco em usuarios que acima)

  3. Se um usuário pode ter vários endereços mas cada endereço pertence a um só usuário, tens de adicionar uma chave estrangeira de endereços para usuários (id_usuario em endereco)

  4. Se um usuário pode ter vários endereços e cada endereço pode pertencer a mais do que um usuário, tens de adicionar uma tabela de relação usuarios_enderecos com as chave estrangeira para ambas as tabelas - id_usuario e id_endereco)

1 curtida

A relação é um usuário com a lista de todos seus endereços cadastrados.
Pela opções que vc colocou aí, seria a 3