Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 按特定行中的组返回_Php_Sql - Fatal编程技术网

Php 按特定行中的组返回

Php 按特定行中的组返回,php,sql,Php,Sql,我有表格名称样本我只想级别行分组返回 level | value ------------------- 1 | jhon 1 | ren 1 | ronron 2 | mark 2 | nonoy 2 | edong 3 | pajardo 3 | bughao 3 | mariel 4 | marker 4 | jong 4

我有
表格
名称
样本
我只想
级别
行分组返回

level  |  value
-------------------
  1    |   jhon 
  1    |   ren
  1    |   ronron
  2    |   mark
  2    |   nonoy
  2    |   edong
  3    |   pajardo
  3    |   bughao
  3    |   mariel
  4    |   marker
  4    |   jong
  4    |   jazz
  4    |   jhon
我只想输出是这样的

level  |  value
-------------------
  1    |   jhon 
       |   ren
       |   ronron
  2    |   mark
       |   nonoy
       |   edong
  3    |   pajardo
       |   bughao
       |   mariel
  4    |   marker
       |   jong
       |   jazz
       |   jhon

您可以在MySQL中执行此操作,尽管我并不推荐:

select l, value
from (select t.*,
             (case when @l = level then NULL
                   else @l := level
              end) as l
      from table t cross join (@l := NULL) params
      order by level
     ) t;

我不推荐它,因为SQL表/结果集有定义良好的行和列,并且它表示无序集。所需的格式意味着给定行的定义取决于前面的行。这样的操作最好在应用程序层完成。

这并不完全是您想要的输出,但您可以使用它:

SELECT level, GROUP_CONCAT(value) FROM sample GROUP BY level

在程序逻辑中而不是在数据库管理系统的SQLTag中这样做?是SQL Server吗?