首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MySQL选择count(*)函数查找打开的所有状态

MySQL选择count(*)函数查找打开的所有状态
EN

Stack Overflow用户
提问于 2017-05-04 06:19:56
回答 5查看 2.5K关注 0票数 0

我被我的密码卡住了!

在我的数据库中,我有以下列:

id \ name \ mail / status / date

status中,只能打开或关闭。

现在,我的数据库中有超过100行,我想知道有多少行是OPEN,有多少行是关闭的,但是我不知道如何做到这一点。

我试着在这里写了很多文章,但是没有人给我正确的答案。

我写了这段代码:

代码语言:javascript
运行
复制
$query = "SELECT status, COUNT(OPEN) FROM cases GROUP BY status ORDER BY COUNT(status) desc";
$result = mysql_query($query);


<?php echo($result); ?>

现在我希望得到这样的结果:

53

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2017-05-04 07:38:34

您可以使用mysql的案例方法检查状态。

代码语言:javascript
运行
复制
SELECT SUM(CASE WHEN status = 'OPEN' THEN 1 ELSE 0 END) AS 'Open', SUM(CASE WHEN status = 'CLOSED' THEN 1 ELSE 0 END) AS 'Closed' FROM cases

如果对你有用,请告诉我。

在PHP中

代码语言:javascript
运行
复制
<?php 
if (mysqli_connect_errno()) { 
  echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
  }
  $sql="SELECT SUM(CASE WHEN status = 'OPEN' THEN 1 ELSE 0 END) AS 'Open', SUM(CASE WHEN status = 'CLOSED' THEN 1 ELSE 0 END) AS 'Closed' FROM cases"; 
  if ($result=mysqli_query($con,$sql)) {
   // Return the number of rows in result set 
    $rowcount=mysqli_num_rows($result); 
    printf("%d",$rowcount); // Free result set
    $row = mysqli_fetch_array($result, MYSQLI_ASSOC);
    mysqli_free_result($result); 
  }
  mysqli_close($con);
?>

在HTML中

代码语言:javascript
运行
复制
<div class="row">
<div class="col-lg-2 col-sm-4">
  <div class="circle-tile">
    <a href="#"><div class="circle-tile-heading green"><i class="fa fa-commenting-o fa-fw fa-3x"></i></div></a>
    <div class="circle-tile-content green">
      <div class="circle-tile-description text-faded"> Åbne sager</div>
      <div class="circle-tile-number text-faded "><?php echo $row['OPEN'];?></div>
      <a class="circle-tile-footer" href="#">Mere info <i class="fa fa-chevron-circle-right"></i></a>
    </div>
  </div>
</div>

<div class="col-lg-2 col-sm-4">
  <div class="circle-tile ">
    <a href="#"><div class="circle-tile-heading red"><i class="fa fa-check fa-fw fa-3x"></i></div></a>
    <div class="circle-tile-content red">
      <div class="circle-tile-description text-faded"> Lukket sager </div>
      <div class="circle-tile-number text-faded "><?php echo $row['CLOSED'];?></div>
      <a class="circle-tile-footer" href="#">Mere Info <i class="fa fa-chevron-circle-right"></i></a>
    </div>
  </div>
</div>
票数 2
EN

Stack Overflow用户

发布于 2017-05-04 06:24:31

如果是in status it can only be OPEN og(or?) CLOSED,则此查询最多为2行,并对这两种状态进行计数。

代码语言:javascript
运行
复制
select count(*) as cnt, status from t group by status
票数 1
EN

Stack Overflow用户

发布于 2017-05-04 06:25:21

试着为你做这件事

代码语言:javascript
运行
复制
 $sql="SELECT status, COUNT() as count FROM cases WHERE status = 'ÅBEN' UNION ALL SELECT status, COUNT() FROM cases WHERE status = 'LUKKET'";
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43775254

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档