0

不知道这叫什么,这限制了我搜索答案的能力。

我有一个包含表单提交的表,每一行都是这个表单的一个字段。每组字段(每个提交)都用时间戳和索引号标记,例如3247623445.8446. 每行还有一列说明字段的名称,然后是另一列带有该字段的值。

我需要选择所有这些数据进行导出,将所有以相同的最后 4 位数字结尾的行分组,因此我最好可以创建一个关联数组,如下所示$rows['8446'][fieldname] = $value

4

1 回答 1

2
SELECT ...
...
GROUP BY RIGHT(yourfield, 4)

可以做到这一点,假设这些数字存储为字符串而不是浮点数/双精度数。

当然,在第二次阅读您的问题时,我可能弄错了。对于您在 PHP 中的分组,它会是

while($row = mysql_fetch_assoc($result)) {
   $digits = substr($row['yourfield'], -4, 4); // get rightmost 4 chars
   $rows[$digits]...
}
于 2012-09-14T15:02:33.560 回答