在数据库中显示具有相同数据的行,特别是div

时间:2017-02-27 10:08:58

标签: php

假设我的数据库中有数据,其中一些行具有相同的数据。

id|value|message
 1|001.  |one
 2|001.  |five
 3|002.  |four
 4|001.  |hello
 5|001.  |sup
 6|002.  |sure?

i echo是否可以001<div class="display"></div>的所有消息数据放在一个002中,将<div class="display></div>放在同一<div class="display"></div>的消息数据放在一起count {1}}显示两个不同值的PHP

我尝试使用

$sql =<<<EOF SELECT value, COUNT(value) AS NumOccurrences FROM table WHERE id != '$log_id' GROUP BY value, message ORDER BY id DESC; EOF; $ret = $db->query($sql); while ($row = $ret->fetchArray(SQLITE3_ASSOC)) { $value = $row['value']; echo "<div class='display'>$value</div>"; }
echo

但上面的代码<div class="display"></div>div。每个value

每次<div class="display">001</div> <div class="display">001</div> <div class="display">002</div> <div class="display">001</div> <div class="display">001</div> <div class="display">002</div>
<div class="display">001001001001</div>
<div class="display">002002</div>

但我想要这样的东西

PHP

请我是auto的新手,并努力寻找答案。这可能吗?

1 个答案:

答案 0 :(得分:0)

如果不更改查询,您可以执行以下操作:

  $by_val = array();
  while ($row = $ret->fetchArray(SQLITE3_ASSOC))
  {
      $value = $row['value'];
      if(!isSet($by_val[$value])) $by_val[$value] = '';
      $by_val[$value] .= $value;
  }

  foreach($by_val as $key => $str) {
    echo "<div class='display'>".$str."</div>";
  }