簡體   English   中英

合並行並將其值放在mysql的單獨列中

[英]Combine rows and put their values in seperate column in mysql

我想合並兩個或兩個以上具有相同名稱的行,並將其值放在兩個單獨的列中。 使用以下圖像可以更清楚地看到問題: 在此處輸入圖片說明

我的預期輸出是:

在此處輸入圖片說明

您可以在此處檢查小提琴: 小提琴

到目前為止,我嘗試過的是MySQL代碼:

Select subjects, mark_score, activity 
   FROM(
      SELECT subjects,  mark_score, 
      (SELECT regd, subjects, mark_score 
       FROM exo_i WHERE entry='7' and regd='19') as activity 
       FROM exo_i WHERE regd='19' GROUP BY subjects)t

如評論中所述,要求是為“ FA1”條目顯示“標記”,為“ SA1”活動顯示“活動”。 假設有不能使用這些值的多個行(即組合regdsubjectsaactivity是獨一無二的),你可以為每個這些活動的子查詢,並加入他們的行列:

SELECT a.regd, a.subjects, a.marks, b.activity
FROM   (SELECT regd, subjects, marks
        FROM   mytable
        WHERE  entry = 'FA1') a
JOIN   (SELECT regd, subjects, marks AS activity
        FROM   mytable
        WHERE  entry = 'SA1') b ON a.regd = b.regd AND a.subjects = b.subjects

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM