Hola ! como andan?
Tengo una duda, la cual es la siguiente:
Si tengo que hacer una tabla para relacionar la amistad entre usuarios (Similar a Facebook o Twitter) cual es la mejor manera de hacerlo? Pensando siempre en que puede haber miles de usuarios.
Yo pensé lo siguiente:
1- Crear una tabla para los usuarios llamada
usuarios con campos: ID_USER, USERNAME, EMAIL, ETC ETC.
2- Crear una tabla llamada
friendship para relacionar los ID de los usuarios donde los campos serian: ID(primary key), ID_USER_REL (clave secundaria), ID_FRIEND_REL
Donde ID es el campo autonumerico para que sea un registro único.
Donde ID_USER_REL es el
ID de la tabla
usuarios
Donde ID_FRIEND_REL tambien es el ID de la tabla
usuarios que quiero que sea el amigo
Hasta ahí vamos bien, ¿Es la manera correcta?
No entiendo como haria luego el filtro para obtener la amistad.. Por ejemplo:
Código SQL:
Ver originalSELECT * FROM usuarios LEFT JOIN friendship ON usuarios.ID_USER=friendship.ID_USER_REL
WHERE friendship.ID_USER_REL=20
¿Se entiende?
Saludos!!