Моя пользовательская таблица не является необычной и использует основное поле id в качестве идентификатора пользователя.Связать друг друга и таблицу пользователей (чтобы получить имена пользователей?)
Мои друзья таблица выглядит это, однако:
CREATE TABLE `friends` (
`uid` INT NOT NULL ,
`fid` INT NOT NULL ,
PRIMARY KEY (`user_id`, `friend_id`)
) ENGINE = MYISAM ;
я могу легко найти друзей одного пользователя, то есть
SELECT fid FROM friends WHERE uid = 12
И это будет в основном возвращать список друзей в виде идентификаторов, однако я не уверен, какой метод вообще можно получить, чтобы получить имена своих пользователей или другие данные. Я слышал о внешних ключах (и, конечно же, присоединяюсь), не знаю, как на самом деле выбрать то, что мне нужно делать.
Прямо сейчас я делаю это уродливое метод:
SELECT username FROM users WHERE id IN (1,2,3,4..(other fid's)..)
Это не кажется правильным вообще.
Как мне это сделать?
Внешние ключи также полезны, но не нужны в вашем случае. они обеспечивают относительную согласованность базы данных. – heximal