Sql,高级设计帮助

时间:2011-04-05 18:00:15

标签: mysql sql

  

可能重复:
  SQL Statement to write table?

1)考虑下面的社交网络。在这个网络节点代表人和链接代表友谊。例如,A和B是朋友,A和B之间有一个链接。您希望有一个数据库来存储您的用户配置文件(id,fname,lname,email,gender,password-您可以使用节点节点名称作为ids),用户的兴趣(一个人可以有多种兴趣),以及他们的友谊关系

到目前为止,我只完成了部分sql语句。我需要帮助关系

drop table users;
drop table intrest;
drop table friendships;

create table users(
id INT,
Fname char(15),
Lname char(15),
email char(20),
street char(15),
state char(2),
zip INT,
age INT,
gender char (2),
phone INT,
User_password char(15),
primary key (id)

create table Instrests(
id INT,
description char(30),
Primary key (id),
foreign key (users_id) 

create table friendships(

2 个答案:

答案 0 :(得分:1)

顺便说一下,有一个更好的方式来表示你的数据,上传一个图像(如果你屏幕转储表格结构并在这里发布,请节省你很多时间)我也已经有一个帖子询问关系这是我的输出之后的关系一些帮助。

enter image description here

注意User和Friends之间的友谊和sql语法是这样的:

select 
    u2.UserID,
    u2.FirstName,
    u2.SecondName,
    p.picturepath
from User u1 -- This gets me
join Friends f on u1.UserID = f.UserID -- This gets my friends
join User u2 on f.FriendID = u2.UserID -- This gets my friends info
join Pictures p on p.UserID = u2.UserID -- This gets my friends pics
where u1.UserID = 1  -- ...or whatever; don't actually hardcode "1"!

现在你所要做的就是把它当作你自己的方法应用它。

答案 1 :(得分:0)

怎么样

friendships
------------
user_1_id
user_2_id
status