繁体   English   中英

如何使用 PHP MySQL 对列的值进行分组?

[英]How to group values of columns using PHP MySQL?

我找不到如何对 7 个 MySQL 列的值进行分组。
列 :

ex_MONDAY
ex_TUESDAY
ex_WEDNESDAY
ex_THURSDAY
ex_FRIDAY
ex_SATURDAY
ex_SUNDAY

值或多或少是相同的例子

15-00035 / 15-00035 / 12-00014 / 11-00004 / 11-00004 / 11-00004 / 11-00004 / 

我希望它对这些值进行分组,我可以在一段while ($z < mysql_num_rows($result))使用它们while ($z < mysql_num_rows($result)) ,结果我会得到这样的结果:

15-00035
12-00014
11-00004

因为分组后只有 3 个不同的值。

目前我正在使用此代码,但似乎不起作用:

$result=mysql_query("SELECT ex_MONDAY,ex_TUESDAY,ex_WEDNESDAY,ex_THURSDAY,ex_FRIDAY,ex_SATURDAY,ex_SUNDAY FROM mytable WHERE week=38 AND year=2015 GROUP BY ex_MONDAY,ex_TUESDAY,ex_WEDNESDAY,ex_THURSDAY,ex_FRIDAY,ex_SATURDAY,ex_SUNDAY");

$fetch=mysql_fetch_row($result);

echo "$fetch[0]"; //returns 15-00035
echo "$fetch[1]"; // returns no value
echo "$fetch[2]"; // returns 11-0004

使用 PHP 函数array_unique()array_values()

$result=mysql_query("SELECT ex_MONDAY,ex_TUESDAY,ex_WEDNESDAY,ex_THURSDAY,ex_FRIDAY,ex_SATURDAY,ex_SUNDAY FROM mytable WHERE week=38 AND year=2015");
$fetch = array_values(array_unique(mysql_fetch_row($result)));

要清除空值,请另外使用array_filter()

$fetch = array_values(array_unique(array_filter(mysql_fetch_row($result))));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM