sql >> Base de Datos >  >> RDS >> Mysql

matriz en MySQL

A menos que tenga una muy buena razón para hacer esto, debe mantener sus datos normalizados y almacenar las relaciones en una tabla diferente. Creo que quizás lo que estás buscando es esto:

CREATE TABLE people (
    id int not null auto_increment,
    name varchar(250) not null,
    primary key(id)
);

CREATE TABLE friendships (
    id int not null auto_increment,
    user_id int not null,
    friend_id int not null,
    primary key(id)
);

INSERT INTO people (name) VALUES ('Bill'),('Charles'),('Clare');

INSERT INTO friendships (user_id, friend_id) VALUES (1,3), (2,3);

SELECT *
  FROM people p
    INNER JOIN friendships f
      ON f.user_id = p.id
  WHERE f.friend_id = 3;