php - 检查数据库是否包含两个年龄相同的人并打印出来
问题描述
我在数据库中有很多同龄人,我想打印同龄人例如:
Table people:
Name Age
Gessica 12
Alice 12
Max 12
Jack 34
Federica 23
现在我想打印:
Age:12 Gessica,Alice,Max
Age:34 Jack
Age:23 Federica
我使用 Php 并尝试 pg_fetch_array 函数:
$query = pg_query($conn1, $query_impiegati);
$people=array('Gessica','Alice','Max','Jack','Federica');
while($row = pg_fetch_array($query)) {
$results[] = array('Name'=>$row['Name'],'Age'=>$row['Age'] );
for($i=0;i<count($results);$i++){
for($j=0;j<count($masioni);$i++){
if($people[j]==results['Age'][i]){
echo $row["Age"];
echo $row["Name"]<br>';
}
}
}
}
解决方案
您可以在查询中进行此聚合:
SELECT Age,
STRING_AGG(Name, ',') AS Names
FROM people
GROUP BY Age
ORDER BY Age
输出:
Age Names
12 Gessica,Alice,Max
23 Federica
34 Jack
推荐阅读
- node.js - 开发单独的前端和后端时的会话问题。(港口)
- android - 是否可以在“BOOT_COMPLETED”广播中调用 javascript 函数并访问 localStorage?(安卓)
- delphi - Delphi编译器记录内存泄漏
- mongodb - 猫鼬 findOneAndUpdate 行为
- vue.js - RangeError:超过最大调用堆栈大小”,同时将 vuelidate 与 vuetify 一起使用
- java - 未绑定命名参数:用户:id
- typescript - vue3.2 + ts + element plus如何异步获取dom
- android - Jetpack compose 中的活动视图模型
- javascript - 为什么我的导航栏导致我的页面在右侧有额外的空间?
- swiftui - 初始化@State变量时如何避免SwiftUI Initial View被多次初始化?