Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

matriz no MySQL


A menos que você tenha um bom motivo para fazer isso, você deve manter seus dados normalizados e armazenar os relacionamentos em uma tabela diferente. Acho que talvez o que você esteja procurando seja isso:
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;