微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 在SQL Query中使用带有count的DISTINCT关键字

我有一个页面显示所有公司名称的列表(确切地说是45个).

数据库表当前有43,415个结果,所以我只想显示它们没有重复(这就是为什么我在选择时使用disTINCT)但我还想计算每个公司有多少结果并回应它们.

我尝试使用count()作为但是它删除了所有公司结果并且只放置了总数(43,415).

我的问题是如何使用disTINCT显示公司(因为我不希望在页面上有重复项),然后还要显示每个公司的总结果?

任何帮助表示赞赏!

$servername = "localhost";
$username = "";
$password = "";
$dbname = "";

// Connection
$conn = new MysqLi($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection Failed: " . $conn->connect_error);
} 

$sql = "SELECT disTINCT company FROM ads ORDER BY company ASC";

$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {

       // display the company name
       echo $row["company"];

       // I WOULD LIKE TO ECHO OUT HERE THE TOTAL OF EACH COMPANY HAS (COUNT) IN RESULTS!

    }
} else {
    echo "0 results";
  }
$conn->close();
?>

解决方法:

我认为您应该尝试使用GROUP BY子句.

不知道你的表标记尝试玩这个:

$query = "SELECT 

  count(company) as count 

FROM ads 

GROUP BY company 

ORDER BY company ASC"

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐