如何建立表的结构

静c心 2014-05-03 05:42:35
有一张user表,里面有id 等用户的一些信息,怎么能够通过建立其他的表,通过查询某用户的id,列出该用户的所有好友。
...全文
117 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Kael Z 2014-05-04
  • 打赏
  • 举报
回复
加个好友ID字段,如果想要约束的话可以再本表加: CREATE TABLE FRIEND ( U_ID INT NOT NULL COMMENT '用户ID', F_ID VARCHAR(50) COMMENT '好友ID', PRIMARY KEY (U_ID) )ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8; ALTER TABLE FRIEND ADD CONSTRAINT FRIEND_KEY FOREIGN KEY (F_ID) REFERENCES FRIEND (U_ID) ON DELETE RESTRICT ON UPDATE RESTRICT;
WWWWA 2014-05-04
  • 打赏
  • 举报
回复
用户ID 好友id 就可以了,有什么要求
静c心 2014-05-04
  • 打赏
  • 举报
回复
谢谢,个位,就是用以上的方法解决的
rucypli 2014-05-04
  • 打赏
  • 举报
回复
直接加一列好友id也行
码无边 2014-05-04
  • 打赏
  • 举报
回复
可以建立两张表,基础的用户表users,用户关系表usersinfo users

CREATE TABLE `users`(     `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',     `username` VARCHAR(50) NOT NULL COMMENT '用户名称',     PRIMARY KEY (`id`)  );
usersinfo

CREATE TABLE `usersinfo`(     `id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',     `user_id` INT(11) NOT NULL COMMENT '关联user_id',     PRIMARY KEY (`id`)  );
查询的时候 SELECT users.id,users.username FROM `users` LEFT JOIN usersinfo ON `users`.id=usersinfo.user_id 这样用户与其他用户的关系就出来
benluobo 2014-05-04
  • 打赏
  • 举报
回复
可以单独建立好友表,只存好友的ID即可,好友的基本信息也肯定是存在用户表的,好友表只存储关系 关系可以1对1存,也可以1对多存
卖水果的net 2014-05-04
  • 打赏
  • 举报
回复

create table users(id int , name varchar(60) ) ;
create table rela(id int , fid int ) // 也可以考虑使用 FK 来约束一下,参考楼上。
ACMAIN_CHM 2014-05-03
  • 打赏
  • 举报
回复
create table friend (uid int, fid int) 存放用户自己的ID和他朋友的ID。

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧