繁体   English   中英

如何通过一个查询或PHP在MySQL中获取所需的数据?

[英]How to get the data I want in MySQL in one query or in PHP?

表格字段及其数据:

auto_id   user_id  file_id
1         1         1
2         1         13
3         1         14
4         4         1
5         5         1
6         8         18
7         8         51
8         8         31

我想要的是:

userFiles[user_id] = 'file_id';

例如:

userFiles[1] = '1,13,14';
userFiles[4] = '1';
userFiles[5] = '1';
userFiles[8] = '18,51,31';

非常感谢你!!

SELECT user_id, GROUP_CONCAT(file_id)
FROM yourtable
GROUP BY user_id

如果没有太多记录,这是一种简单的方法-group_concat的长度限制为1024字节(默认值,但可配置)。

对于每个ID,您可以使用的SQL查询非常简单:

“从表中选择file_id,其中user_id =”。 $ user_id;

将答案加载到数组中,然后:

$ string = implode(“,”,$ answers);

将整个内容放在user_id的for循环中,并分配给userFiles数组。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM