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

前端之家收集整理的这篇文章主要介绍了php – 许多数据库行与一个逗号分隔的值行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在创建一个允许网站用户成为朋友的表格.我试图确定哪个是最好的表设计来存储和返回用户的朋友.目标是快速查询并且不会占用大量的数据库空间.

我有两个选择:

每个友谊都有单独的行.

+----+-------------+-------------------+
| 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要慢得多.

原文链接:https://www.f2er.com/php/132222.html

猜你在找的PHP相关文章