在while循环中检查相同的行,并将它们放在单独的表中

乔治

我想先检查所有相等的行,然后将它们放入单独的表中。

到目前为止,这是我所做的:

table1
    |   id  |   name    |
    |   1   |   JUS     |
    |   1   |   NUM     |
    |   2   |   SET     |


/**
 * this is the the query for retrieving the data
 * from table1
 */
$query="SELECT 
            id,
            name
        FROM 
            table1
        order by 
            id";

$results=$db->query($query);

$previous='';
while($row=mysqli_fetch_assoc($results)){
    $id=$row['id'];
    $name=$row['name'];

    if($id==$previous){

        /**
         * This is where i am stucked up
         */
        $current='';

    }
    $previous=$id;
}

我想将id1作为值放入一个html表中,如下所示

    first html table
    ID      |   1   |   1   |
    Name    |   JUS |   NUM |

并获得ID2作为值进入另一个html表。因此,如果不一致,我们将得到单独的表id

  second html table
    ID      | 2     |
    Name    | SET   |

任何关于如何实现它的想法都值得赞赏。

凯文

您可以先将它们全部收集在一个容器中,并使用ids作为键,以便将它们分组在一起。之后,只需相应地打印它们即可:

$data = array();
while($row = $results->fetch_assoc()){
    $id = $row['id'];
    $name = $row['name'];
    $data[$id][] = $name; // group them
}

foreach($data as $id => $values) {
    // each grouped id will be printed in each table
    echo '<table>';
    // header
    echo '<tr>';
        echo '<td>ID</td>' . str_repeat("<td>$id</td>", count($values));
    echo '</tr>';

    echo '<tr>';
    echo '<td>Name</td>';
    foreach($values as $value) {
        echo "<td>$value</td>";
    }
    echo '</tr>';

    echo '</table><br/>';
}

如果这些字段就是这样,这将起作用,如果您需要更多动态的东西,则需要另一个维度,而不仅仅是push name,您需要将整行推入:

$results = $db->query('SELECT id, name, age FROM table1');

$data = array();
while($row = $results->fetch_assoc()){
    $id = $row['id']; unset($row['id']);
    $data[$id][] = $row; // group them
}

$fields = array('name', 'age');

foreach($data as $id => $values) {
    // each grouped id will be printed in each table
    echo '<table>';
    // header
    echo '<tr>';
        echo '<td>ID</td>' . str_repeat("<td>$id</td>", count($values));
    echo '</tr>';

    foreach($fields as $field) {
        // construct td
        $temp = '';
        echo "<tr><td>$field</td>";
        for($i = 0; $i < count($values); $i++) {
            $temp .= '<td>' . $values[$i][$field] . '</td>';
        }
        echo $temp; // constructed td
        echo '</tr>';

    }

    echo '</table><br/>';
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何阅读txt文件的每一列,并将它们放在单独的数组中?

来自分类Dev

从多个表中选择并将它们放在一个临时表中

来自分类Dev

检查图片是否重叠并将它们放在彼此下方

来自分类Dev

检查图片是否重叠并将它们放在彼此下方

来自分类Dev

检查 ArrayList 是否包含 1 个以上的相同整数并将它们从列表中删除?

来自分类Dev

PHP 在两个多维数组中查找相同的值并将它们映射到单独的数组中

来自分类Dev

循环遍历 SQL 结果并将它们插入到临时表中

来自分类Dev

从三个单独的表中检索数据并将它们显示在一个 php 页面上

来自分类Dev

如何用逗号分隔文本的每一行并将它们放在一个数组中?

来自分类Dev

如何从txt文件中提取单独的第n行并将它们分配给python 3中的键:值对?

来自分类Dev

从 JSON 对象中提取值并将它们分配给循环中的 shell 变量

来自分类Dev

如何在android设备中查找所有文件并将它们放在列表中?

来自分类Dev

熊猫-对每个可重复类的ID进行分组,并将它们放在列中的列表中

来自分类Dev

如何在while循环中检查mysql获取的行是否相同

来自分类Dev

创建一个显示 0-101 的数组循环并将它们的数字总和单独存储到该索引中

来自分类Dev

python:提取不同列表的项目并将它们放在一组中

来自分类Dev

打开几个csv并将它们放在数据框中

来自分类Dev

PHP:通过 HTTP POST 返回错误并将它们放在 CURL 中

来自分类Dev

在数组中查找重复值并将它们保存在单独的数组中

来自分类Dev

引导导航栏中的单独菜单项并将它们居中

来自分类Dev

C ++从ifstream拆分字符串并将它们放置在单独的数组中

来自分类Dev

当我为数组中的元素输入值时,在for循环中,在for循环之后将它们转换

来自分类Dev

找到相同的 id 并将它们存储到一个数组中

来自分类Dev

当某个列的值等于另一张表中的行时如何将行求和并将它们插入到第三张表中?

来自分类Dev

如何使用SQL Server中的视图检查可用库存并将它们分配给订单

来自分类Dev

如何在jQuery中制作3种动画并将它们循环播放?(时间搞砸了。)

来自分类Dev

使用 For 循环选择 Access 中的特定字段并将它们粘贴到 excel

来自分类Dev

如何从目录中的所有模块动态导入所有变量并将它们放在列表中?

来自分类Dev

如何选择另一个数组中的元素并将它们放在 Python 中的数组外部?

Related 相关文章

  1. 1

    如何阅读txt文件的每一列,并将它们放在单独的数组中?

  2. 2

    从多个表中选择并将它们放在一个临时表中

  3. 3

    检查图片是否重叠并将它们放在彼此下方

  4. 4

    检查图片是否重叠并将它们放在彼此下方

  5. 5

    检查 ArrayList 是否包含 1 个以上的相同整数并将它们从列表中删除?

  6. 6

    PHP 在两个多维数组中查找相同的值并将它们映射到单独的数组中

  7. 7

    循环遍历 SQL 结果并将它们插入到临时表中

  8. 8

    从三个单独的表中检索数据并将它们显示在一个 php 页面上

  9. 9

    如何用逗号分隔文本的每一行并将它们放在一个数组中?

  10. 10

    如何从txt文件中提取单独的第n行并将它们分配给python 3中的键:值对?

  11. 11

    从 JSON 对象中提取值并将它们分配给循环中的 shell 变量

  12. 12

    如何在android设备中查找所有文件并将它们放在列表中?

  13. 13

    熊猫-对每个可重复类的ID进行分组,并将它们放在列中的列表中

  14. 14

    如何在while循环中检查mysql获取的行是否相同

  15. 15

    创建一个显示 0-101 的数组循环并将它们的数字总和单独存储到该索引中

  16. 16

    python:提取不同列表的项目并将它们放在一组中

  17. 17

    打开几个csv并将它们放在数据框中

  18. 18

    PHP:通过 HTTP POST 返回错误并将它们放在 CURL 中

  19. 19

    在数组中查找重复值并将它们保存在单独的数组中

  20. 20

    引导导航栏中的单独菜单项并将它们居中

  21. 21

    C ++从ifstream拆分字符串并将它们放置在单独的数组中

  22. 22

    当我为数组中的元素输入值时,在for循环中,在for循环之后将它们转换

  23. 23

    找到相同的 id 并将它们存储到一个数组中

  24. 24

    当某个列的值等于另一张表中的行时如何将行求和并将它们插入到第三张表中?

  25. 25

    如何使用SQL Server中的视图检查可用库存并将它们分配给订单

  26. 26

    如何在jQuery中制作3种动画并将它们循环播放?(时间搞砸了。)

  27. 27

    使用 For 循环选择 Access 中的特定字段并将它们粘贴到 excel

  28. 28

    如何从目录中的所有模块动态导入所有变量并将它们放在列表中?

  29. 29

    如何选择另一个数组中的元素并将它们放在 Python 中的数组外部?

热门标签

归档