如何使用PHP进行SQL的GROUP BY?

2023-12-13

我想从数据库表中选择行,并使用 PHP 而不是 SQL 基于参数(在本例中为按项目)对它们进行分组。

SQL:

Clothes table

 id  item     owner
 1   shoes     joe 
 2   pants     joe
 3   hat       joe
 4   pants     joe
 5   hat       tom

SELECT * from Clothes where owner='joe'

 1   shoes     joe 
 2   pants     joe
 3   hat       joe
 4   pants     joe

以下是我希望使用 PHP 而不是 SQL 得到的结果GROUP BY item

PHP :

 1   shoes     joe 
 2   pants     joe   //count 2
 3   hat       joe

我确信有一个 PHP 数组函数可以实现这个功能,我只是不熟悉,你觉得呢?


最简单的方法是利用数组键的唯一性:

$grouped = array();

while ($row = $db->fetchResult()) {  // or however you get your data
    if (isset($grouped[$row['item']])) {
        $grouped[$row['item']]['count']++;
    } else {
        $grouped[$row['item']] = $row + array('count' => 1);
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用PHP进行SQL的GROUP BY? 的相关文章

  • 为表中的每个组选择前 N 行

    我面临一个非常常见的问题 即 为表中的每个组选择前 N 行 考虑一个表id name hair colour score列 我想要一个结果集 对于每种头发颜色 都能得到前 3 名得分手的名字 为了解决这个问题 我得到了我所需要的Rick O
  • “实际或正式的参数列表长度不同”

    当我尝试将某些内容放入 括号中时Friends f new Friends friendsName friendsAge 它出现错误 Friends 类中的构造函数 Friends 不能应用于给定类型 必需 无参数 发现 字符串 整数 原因
  • 使用 PHP glob 列出 FTP 服务器上的文件不起作用

    我使用此代码来访问目录 location files pictures glob location png 我想使用 FTP 访问远程路径 location opendir ftp user password host name files
  • 月份增量查询

    我想通过添加 1 个月来更新数据库中的月份 但我不知道如何在以下存储过程查询中添加月份 我不擅长 sql 请检查它 ALTER PROCEDURE dbo ChangePassword password varchar 20 epasswo
  • Java JDBC:更改表

    我希望对此表进行以下修改 添加 状态列 varchar 20 日期列 时间戳 我不确定该怎么做 String createTable Create table aircraft aircraftNumber int airLineCompa
  • XML 解析:格式良好的检查:未声明的实体

    我正在使用 SSMS 2008 但收到以下错误 你知道这意味着什么吗 Msg 9448 Level 16 State 1 Line 4 XML parsing line 1 character 89 well formed check un
  • 如何使用sql作为xml路径('')但保留回车符

    我有下面的代码 select select cast Narrative as Varchar max char 13 from officeclientledger where ptmatter matter and ptTrans 4
  • Facebook API sdk 4.0 - 将照片发布到 Facebook

    我正在尝试创建一个应用程序 用户可以在其中浏览照片并将其从计算机提交到 Facebook 为此 他们首先必须将照片上传到服务器 然后使用 Facebook 请求将此图像发布到 Facebook 我正在使用多部分 表单数据 这就是我到目前为止
  • 如何在 Windows 上安装 Zend 框架

    安装 Zend Framework 就是这么简单 是的 对 好吧 我正在写一本初学者的书 有一件不太详细的事情是最重要的部分 安装该死的东西 浏览了几个小时的快速入门指南后 它只说 下载 Zend 添加包含目录 bla bla 然后就完成了
  • 使用 PHP 从 Mongo 解码 JSON

    我已经看过这个线程 PHP 解码嵌套 JSON https stackoverflow com questions 3555335 php decode nested json并没有设法用它来解决我的问题 我目前正在从 Mongo 获取 J
  • 如何使用更新资源控制器 laravel 4?

    我有带有索引 编辑 更新方法的客户控制器 Route resource customer CustomerController 控制器方法更新 public function update id echo id 我的 HTML 表单
  • 使用间隔阈值对不同的连续时间戳记录进行分组

    我有一系列间歇性间隔的带有时间戳的 GPS 坐标 我正在使用 PostGIS 将它们渲染到地图画布上 为了渲染它们 需要使用 PostGIS 中的 ST MakeLine 聚合函数将点聚合成线 从而在地图上留下 GPS 数据丢失的间隙 数据
  • 使用PHP从doc、xls文件中读取数据

    我想知道是否可以从 doc 和 xls 文件中读取数据并将 将内容读取到图像文件中 创建文档的页面样本 例如 我有一些文件希望我的客户购买 所以我需要自动创建小图像 例如我的文档样本 我们将不胜感激您的帮助 对于读取 xls 文件 我真的推
  • SQL - != 'NULL' 的解释

    我的SSMS代码如下 Select top 50 From FilteredContact Where statuscode 1 and emailaddress1 NULL and telephone1 NULL and address1
  • PHP 检查当前日期是在设定日期之前还是之后

    我从数据库中提取一个日期 其格式为 dd mm YYYY 我想做的是检查当前日期 如果当前日期早于数据库中的日期 则需要打印数据库日期 如果是在之后 则需要打印 继续 有人能指出我正确的方向吗 if strtotime database d
  • Jquery一键提交多个同名表单

    我有动态创建的循环表单 我需要一键提交所有表单 我正在遵循下面的代码 你能建议我怎么做吗 谢谢
  • 在本地 SDK 服务器上工作时,实时 Google App Engine 上出现 404

    我已经在GAE标准环境上部署了几个PHP应用程序 一切正常 现在我正在部署一个新应用程序 该应用程序位于由gcloudSDK按预期工作 终端命令 dev appserver py log level warning app yaml 问题是
  • 使用 Vue 的多模式组件

    我在 Vue 中实现动态模式组件时遇到问题 A common approach I follow to display a set of data fetched from the db is I dump each of the rows
  • 使用日期 Swift 3 对字典数组进行排序

    我有一个名为 myArray 的数组 其中添加了字典 我希望该字典按时间排序 这是字典中的键 那个时间是在 String 中 时间的日期格式为 yyyy MM dd HH mm ss 我尝试使用下面的代码解决方案 但给出了 从 字符串转换
  • PHPUnit - 模拟 S3Client 无法正常工作

    库 aws aws sdk php 2 PHP 版本 PHP 5 4 24 cli 作曲家 json require php gt 5 3 1 aws aws sdk php 2 require dev phpunit phpunit 4

随机推荐

  • 使用 Autofac 传入 NLog 声明类的类型

    继从这个问题我希望 autofac 将声明对象的类型注入到 NLog 服务的构造函数中 以便它可以正确记录正在记录条目的类型 我的 NLogService 类看起来像这样 public class NLogService ILogServi
  • 如果我们使用 DSB 是否还需要 DMB

    DSB 是 DMB 的超集吗 如果不考虑性能 DNA可以用DSB代替吗 DSB是的超集DMB所以它可以被替换为DSB如果性能不是问题 From Cortex A 系列程序员指南 数据同步屏障 DSB 该指令强制核心 等待所有挂起的显式数据访
  • 节点立即被杀死 - MacOS

    我一直在尝试调试为什么会发生这种情况以及如何修复它以便我可以工作 问题看起来像这样 node 1 2912 killed node 它发生在yarn and npm所以我假设它node 我找不到任何node提及 var log system
  • 我可以隐藏 HTML5 数字输入的旋转框吗?

    跨浏览器是否有一致的方法来隐藏某些浏览器 例如 Chrome 为数字类型的 HTML 输入呈现的新旋转框 我正在寻找 CSS 或 JavaScript 方法来防止出现向上 向下箭头
  • 无法在 Safari/iOS 中工作?

    我的页面中有这段代码 a href href Press me a 该链接被放置在一个带有有用的 onClick 事件的跨度内 现在 在 Chrome 和 Firefox 中 这可以完美地工作 单击链接 执行有用的事件 每个人都很高兴 在使
  • WinForms Livecharts 图表标题

    我在 WinForms 中使用 LiveCharts 我不使用 WPF 的原因是因为我不想在 WPF 中重写 GUI 所以我想看看是否可以使 LiveCharts 在 WinForms 中工作 我将 LiveCharts 控件作为图像保存到
  • 如何指定我可以在 MacOS 上的 XCode 中使用哪个 GDB

    如何指定我可以在 MacOS 上的 XCode 中使用哪个 GDB 带有完整路径 谢谢 您可以设置PBXGDB路径用户默认为 Xcode 指定不同版本的 GDB 供 Xcode 使用 defaults write com apple Xco
  • Javascript split可以保留分割后的值吗?

    在 JavaScript 中 var myString This is my string console log myString split s 输出 This is my string console log myString spl
  • UI5:使用不同的图标从 JSON 动态构建 ListItems

    我有这个简单的 XML 视图
  • 无法使 Firebase 适用于非 Gradle 构建:缺少 google_app_id。 Firebase 分析已禁用

    我正在开发的应用程序有一个非常定制的构建过程 无法使用 gradle 构建我的应用程序 这并不理想 但我无法改变任何事情 尽管如此 我想在我的应用程序中使用 Firebase Analytics 其中包括模块 firebase core f
  • 如何根据二维数组上的特定位置获取网格单元的状态

    考虑一个二维网格n rows and n columns 此处为 75x75 单击鼠标即可在每个单元格中绘制符号 标记 下面的代码用于在单元格内绘制网格线和符号 class DrawCanvas extends JPanel Overrid
  • java.lang.RuntimeException:更新 Firestore 版本后 Firestore (0.6.6-dev) 中出现内部错误

    更新后我收到以下错误firestore 17 0 1 to firestore 17 0 2 java lang RuntimeException Internal error in Firestore 0 6 6 dev at com g
  • 在ConfigureServices()中调用BuildServiceProvider()的成本和可能的副作用是什么

    有时 在服务注册期间 我需要从 DI 容器解析其他 已注册 服务 对于像 Autofac 或 DryIoc 这样的容器来说 这没什么大不了的 因为您可以在一行上注册服务 然后在下一行上立即解决它 但是使用 Microsoft 的 DI 容器
  • 在 powershell 中打印参数

    我想知道 为什么下面的 powershell 脚本中没有打印字符串参数 function Get Name string Username echo user Username PS C gt Get Name ps1 username t
  • ffmpeg rtmp和本地文件输出

    我在使用 ffmpeg 时遇到了麻烦 我从抓取设备 摄像头 接收 rtsp 流并将其流式传输到 rtmp Youtube Live 我想在我的计算机中拥有该流的副本 因此我同时在本地文件中写入 我使用这个命令 ffmpeg y i RTSP
  • Valgrind 了解堆摘要中分配的字节数增加吗?

    我一直在研究调试分叉 TCP 服务器中的内存使用情况 我认为我做得很好 我只是似乎无法在 堆摘要 中找到有关 分配的字节数 的信息 我的服务器运行的时间越长 这个数字似乎就会不断增加 27526 27526 HEAP SUMMARY 275
  • 代理 HTML 元素

    我想检查一个库对我传递给它的视频元素做了什么 所以我天真地这样做了 cosnt videoElement new Proxy document querySelector video get target key const name ty
  • 嵌套 Flexbox 网格

    我已经构建了一个嵌套的弹性盒网格 将用于各个网关 目前 大概是由于使用outline 每个容器内的内容都会进入 并被隐藏 每个网关周围的空白区域 该空白区域充当每个 div 之间的间距 有没有更好的方法来处理网格间距 这可以让我确保内容不会
  • 仅适用于 Chrome 扩展程序中特定域的后台脚本

    我想知道如何仅针对特定 指定域运行 Chrome 扩展程序的后台脚本 例如 如果扩展程序仅在 Google com 的页面上运行 则没有理由让后台脚本在任何其他域上运行 在我的清单文件中 我设置了 匹配 但我仍然可以看到后台脚本在每个域和选
  • 如何使用PHP进行SQL的GROUP BY?

    我想从数据库表中选择行 并使用 PHP 而不是 SQL 基于参数 在本例中为按项目 对它们进行分组 SQL Clothes table id item owner 1 shoes joe 2 pants joe 3 hat joe 4 pa