귀하의 데이터베이스가 어떻게 생겼는지 모르겠지만, 어떻게 설정했는지 알 수 있습니다.
CREATE TABLE twitter_users (
user_id INTEGER PRIMARY KEY NOT NULL,
screen_name VARCHAR(20) NOT NULL
);
CREATE TABLE friends (
friend_id INTEGER PRIMARY KEY NOT NULL
);
CREATE TABLE followers (
follower_id INTEGER PRIMARY KEY NOT NULL
);
그러면이 SQL을 사용하여 추종자가 아닌 친구를 얻을 수 있습니다.
SELECT friend_id, screen_name
FROM friends
LEFT JOIN followers ON follower_id = friend_id
LEFT JOIN twitter_users ON user_id = friend_id
WHERE follower_id IS NULL
화면 이름 인 경우
는
NULL
그들이 당신의
twitter_users
테이블에없는 것을 의미한다. 누락 된 사용자를 찾아 나중에 저장할 수 있습니다. 스크린 이름은 테이블을 주기적으로 업데이트해야 할 수도 있으므로 변경 될 수 있습니다.
friends/ids 및 followers/ids API를 사용하여 한 번에 친구 및 팔로어 ID 5,000 개 목록을 가져옵니다. 화면 이름을 최대 100 개까지 가져 오려면 users/lookup API를 사용하십시오. 사용자의 친구가 2,000,000 명인 경우 ID 목록을 가져 오기 위해 400 회의 API 호출이 필요하므로 적어도 인기있는 사용자의 경우에도 목록을 캐싱해야합니다.
누군가가 500,000 명의 친구를 갖게 될 것이 현실적입니까? –