簡體   English   中英

在PHP中僅一次獲取MySql-Query列作為標題(即使有多個結果)

[英]Get Column of MySql-Query as headline only once in PHP (even if there are several results)

所以,這個名字是怎么說還是不是,因為我真的不知道該如何命名,所以我試圖實現以下目標。

我得到了一個MySQL查詢,它為我提供了如下結果:

id | name     | position
1    Kevin      CEO
2    Sarah      Developer
3    Daniel     Developer
4    Michael    Marketing
5    Tom        Marketing

現在我需要像這樣在Frontend中顯示信息:

**CEO**
Kevin

**Developer**
Sarah
Daniel

**Marketing**
Michael
Tom

這意味着我只需要一次將位置列作為標題,並且在其下我想顯示該位置的匹配人員。 我沒有選擇對每個位置進行單獨的查詢,因為在我的表中我喜歡其中的75個。

因此,我如何才能一方面獲得查詢結果的position s作為標題,另一方面獲得每個人的name在此位置列出)。

我希望我能很好地解釋我的問題。

您可以遍歷結果一次,並將位置設為新數組中的鍵。

$newArray = [];

foreach($myQueryResult as $res){
    $newArray[$res['position']][] = $res['name'];
}

結果為:

Array (
   "CEO" => [ "kevin" ],
   "Developer" => [ "Sarah", "Daniel" ],
   "Marketing" => [ "Michael", "Tom" ]
)

使用此查詢:

SELECT `position`, GROUP_CONCAT(name SEPARATOR '<br>') as name FROM `YourTableName` GROUP BY `position`

暫無
暫無

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

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