小编典典

假设所有朋友也都在用户表中,则需要一个朋友表,该表定义了简单的一对多关系-将用户表链接回自身。所以

User Table

UserID int identity not null

[other attribute fields]

Friends Table

UserIDLink1 int

UserIDLink2 int

[other attribute field]

其中UserIDLink1和UserIDLink2都是Users表上的外键。

例如,如果我有三个用户

1 Joe

2 Bill

3 Jane

并且Joe和Jane是朋友,那么Friends表将只包含一行

1 3

上面的内容隐含地假设,如果A是B的朋友,那么B是A的朋友-

如果不是这种情况,您可能希望将UserIDLink1和UserIDLink2重命名为UserID和FriendID或类似的名称-

在这种情况下,也有两倍的记录。

同样对于双向配置(如果B是A的朋友,则A是B的朋友),还应在Friends表上为(UserIDLink1,UserIDLink2)和(UserIDLink2,UserIDLink1)设置索引,以确保在以下情况下访问始终有效我们正在搜索joe的朋友或jane的朋友(如果您未设置第二个索引,则第一个查询将是有效的索引查找,但第二个查询将需要全表扫描)。

如果您的链接不是双向的,则不必找出A的朋友,但您仍然可能最需要它,因为您可能还需要找出B的朋友。

2020-05-17

mysql 好友数据表_MySQL好友表相关推荐

  1. mysql导入库排除某个表_mysql导入数据排除表-mysql导入数据排除某张表或多张表-吾爱编程网...

    mysql在导出数据的时候可以使用--ignore-table参数来排除某张或者多张表,在数据库导入同样也可以使用,接下来吾爱编程就为大家介绍一下关于mysql导入数据排除某张表或多张表的方法,有需要 ...

  2. 清除mysql数据碎片_MySQL 清除表空间碎片方法总结

    mysql数据库会生成空间碎片了,这些空间碎片对于我们来讲影响不大但如果空间碎片多了会导致mysql查询缓存了,下面一起来看MySQL 清除表空间碎片方法吧,具体的如下所示. 碎片产生的原因 (1)表 ...

  3. mysql 数据转移历史表_mysql 历史数据表迁移方案

    当业务运行一段时间后,会出现有些表数据量很大,可能对系统性能产生不良的影响,常见的如订单表.登录log表等,这些数据很有时效性,比如我们一般很少去查上个月的订单,最多也就是报表统计会涉及到. 在我们的 ...

  4. mysql数据库实验查询_MySQL数据库表数据的查询操作实验

    实验3.MySQL数据库表数据的查询操作实验(1) 一.实验目的 掌握SELECT 语句的基本语法格式. 掌握SELECT 语句的执行方法. 掌握SELECT 语句的 GROUP BY 和 ORDER ...

  5. mysql数据横表变成竖表_MySQL中横表和竖表相互转换

    一  竖表转横表 1. 首先创建竖表 create table student ( id varchar(32) primary key, name varchar (50) not null, su ...

  6. mysql unicode转汉字_Mysql数据库表引擎与字符集

    Mysql数据库表引擎与字符集 1.服务器处理客户端请求 其实不论客户端进程和服务器进程是采用哪种方式进行通信,最后实现的效果都是:客户端进程向服务器进程发送一段文本(MySQL语句),服务器进程处理 ...

  7. mysql 用户管理表_Mysql—用户表详解(mysql.user)

    MySQL 数据库 Mysql-用户表详解(mysql.user) MySQL是一个多用户管理的数据库,可以为不同用户分配不同的权限,分为root用户和普通用户,root用户为超级管理员,拥有所有权限 ...

  8. mysql 优化 修复原理_mysql下表的修复与优化

    在很多的linux生产服务器里很多时候用数据库是mysql,在数据库里算是轻量级的数据库,但是长期以来的使用往往会出现一些问题,一般的状况是无法读取表,此时我们就要来修复表.优化表,减小磁盘使用量,以 ...

  9. 用sqoop将mysql的数据导入到hive表中,原理分析

    Sqoop 将 Mysql 的数据导入到 Hive 中 准备Mysql 数据 如图所示,准备一张表,数据随便造一些,当然我这里的数据很简单. 编写命令 编写参数文件 个人习惯问题,我喜欢把参数写到文件 ...

最新文章

  1. 1402 后缀数组 (hash+二分)
  2. P5290 [十二省联考2019]春节十二响
  3. linux之用echo输入数据到文本末尾以及用open ssl命令在证书文件里面获取公钥
  4. 深度学习pytorch--多层感知机(三)
  5. SpringMVC学习记录--Validator验证分析
  6. 修改oracle默认日期,Oracle 修改默认日期格式
  7. 【BZOJ2553】禁忌,AC自动机+期望DP+矩乘
  8. 利用swap()函数来收缩内存
  9. 摸鱼必备游戏(上班族专用斗地主)
  10. Emmet的HTML语法(敲代码的快捷方式)
  11. Matlab OpenEXR 打开exr格式图片
  12. Vue实例与组件实例
  13. 【完结】囚生CYの备忘录(20220525-20220813)
  14. 正大国际:期货日内波段交易
  15. FZU 1573 大学自习室
  16. CYUSB3014设计方案|替代CYUSB3014芯片|方寸微T630可完全替代兼容CYPRESS CYUSB3014
  17. 错过“复联4”在所不惜,迅雷链技术沙龙北京站有哪些更精彩的地方?
  18. 京东API item_search - 按关键字搜索商品
  19. 关于 fir.im 你可能不知道的实用小工具
  20. 虎牙Java后台实现三次面经

热门文章

  1. evus是什么意思_不知道EVUS是什么鬼?有美签你也去不了美国!
  2. matlab 如何画散点图
  3. 软件定义闪存的星际穿越故事
  4. Ubuntu 18.04.1 下安装搜狗输入法
  5. iOS多语言(国际化)开发(跟随系统 + APP内手动设置)
  6. 如何打开本地用户和组
  7. 苹果审核Rejected的原因列表
  8. 深入学习js的classList
  9. LinkedList的源码分析(三)
  10. 国产手机硬杠苹果?想多了,消费者等着抢购iPhone14