加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 许多数据库行与一个逗号分隔的值行

发布时间:2020-12-13 16:31:26 所属栏目:PHP教程 来源:网络整理
导读:我正在创建一个允许网站用户成为朋友的表格.我试图确定哪个是最好的表设计来存储和返回用户的朋友.目标是快速查询并且不会占用大量的数据库空间. 我有两个选择: 每个友谊都有单独的行. +----+-------------+-------------------+| ID | User_ID | Friend_ID
我正在创建一个允许网站用户成为朋友的表格.我试图确定哪个是最好的表设计来存储和返回用户的朋友.目标是快速查询并且不会占用大量的数据库空间.

我有两个选择:

每个友谊都有单独的行.

+----+-------------+-------------------+
| ID | User_ID     | Friend_ID         |
+----+-------------+-------------------+
| 1  | 102         | 213               |
| 2  | 64          | 23                |
| 3  | 4           | 344               |
| 4  | 102         | 2                 |
| 5  | 102         | 90                |
| 6  | 64          | 88                |
+----+-------------+-------------------+

或将一行中的所有朋友作为CSV存储

+----+-------------+-------------------+
    | ID | User_ID     | Friend_ID         |
    +----+-------------+-------------------+
    | 1  | 102         | 213,44,34,67,8    |
    | 2  | 64          | 23,33,45,105      |
    +----+-------------+-------------------+

检索朋友时,我可以使用explode()创建一个数组,但删除用户会更棘手.

编辑:对于第二种方法,我将在php中分离数组中的每个id,以进行计数等功能.

你认为哪种方法更好?

第一种方法肯定更好.这是什么使关系数据库很好:)

它将允许您通过比第二种方法更具体的标准来搜索和分组.

假设你想写一个查询,以便用户可以看到他们是谁的朋友.第二种方法将需要您使用IN(),并且比使用JOINS要慢得多.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读