저는 현재 재미와 학습을 위해서 작은 웹 서비스를 만들고자합니다. (나는 최근에 실질적으로 프로그래밍을 배우기 시작했다.) 서비스는 트위터와 같다. 사용자가 친구를 팔로우하고 친구의 상태를 알 수 있습니다.twitter는 (는) 관계형 데이터베이스입니까?
관계형 데이터베이스에 대한 질문이 있습니다.
'user', 'friendship'및 'status'의 세 가지 테이블이 있습니다. 여기에 은 이러한 표의 모양을 설명하는 코드입니다.
create table user (
id int unsigned auto_increment primary key,
username varchar(16) not null,
password varchar(255) not null,
created datetime default null
);
create table friendship (
id int unsigned auto_increment primary key,
userid int not null,
friend int not null,
created datetime default null
);
create table status (
id int unsigned auto_increment primary key,
userid int not null,
current_status int not null,
created datetime default null
);
'user.id'는 'friendship.userid'및 'status.userid'와 같습니다.
· 상황은 다음과 같습니다.
1, 사용자가 로그인하여 친구의 상태 번호를 가져옵니다.
2, PHP는 사용자의 ID를 얻었고 친구의 사용자 ID, 사용자 이름, 상태 및 생성 된 (상태)를 찾습니다.
일부 SQL 문장을 시도했지만 작동하지 않았습니다.
수퍼 SQL 작성자가 올바른 SQL을 표시 할 수 있습니까?
건배!
편집 됨 1;
나는 이와 같이 SQL을 시도했다.
select userid, username, current_status, created
from status
join users u1
on u1.id = status.userid
join friendship
on friendship.friend = u1.id
join user u2
on u2.id =friendship.userid
where u2.id = "the user's id from php";
그리고 mysql이 "# 1146 - Table 'Application.user'가 존재하지 않습니다."
시도한 SQL 중 일부를 표시해야합니다. –
또한 status.current_status는 무엇입니까? varchar (db의 트윗 부분)이되어야합니다. –
이 질문은 연구가 부족합니다. 테이블을 만드는 것 이상의 아무것도 수행되지 않습니다. 젠체하는 길은 멀다. – Katti