gpt4 book ai didi

mysql - 像1,2这样一排的通讯分类 - Mysql简单数据库设计

转载 作者:太空宇宙 更新时间:2023-11-03 11:17:45 25 4
gpt4 key购买 nike

我正在使用一个简单的时事通讯脚本,其中可以为一个用户设置不同的类别。但是我想把不同的类别排成一行,比如 1,2,3

表格:

时事通讯_电子邮件

id  email          category
1 test@test.com 1
2 test@test.com 2

时事通讯类别

id  name
1 firstcategory
2 secondcategory

但是我要找的是这样的:

时事通讯_电子邮件

user_id  email                category
1 test@test.com 1,2
2 person@person.com 1

最好的解决方案是什么?

PS:用户可以在个人资料页面选择自己的类别。 (也许有 Mysql 更新?)

最佳答案

SQL 和关系数据模型并不是专门为这种事情而设计的。您可以执行以下任一操作:

  • 在第一个表上使用简单的 SELECT 查询,然后在您的使用代码中迭代结果,从第二个表中获取相应的行并将它们组合成一个字符串(如何你会这样做完全取决于你使用的语言)

  • 对两个表使用JOIN,遍历结果集并累积表 2 的值,只要表 1 的 ID 保持不变即可。这比第一个解决方案更难编码,而且您从数据库中提取的结果集更大,但您只需一个查询就可以逃脱。

  • 使用特定于 DBMS 的 SQL 标准扩展(例如 GROUP_CONCAT)来实现这一点。您将得到您所要求的,但您的 SQL 查询将无法移植。

关于mysql - 像1,2这样一排的通讯分类 - Mysql简单数据库设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3851051/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com