[英]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.