对2列中的所有行求和并使用select显示两列

时间:2017-03-08 04:17:18

标签: php mysql

示例

|like |comment|
|user1|asd    |
|user2|awe    |
|user3|aqw    |
|user4|atr    |
|user5|axc    |
|user6|azw    |
|user7|       |

我有两列,我想要做的是将这些列中的所有行相加并获取两列但我对如何在sql中的查询中做任何事情都不知道。

结果

|like |comment|
| 7   |   6   |

我试过把它排队但是我只能获取1列我不知道怎么用两列做..

function countpostcomment($puid){
$sql = "SELECT COUNT(pc_comment) FROM pcomment WHERE post_uid = '$puid'";
$stmt = $this->dbh->prepare($sql);
$stmt->execute(array("0"));
$active_data = $stmt->fetchAll(PDO::FETCH_ASSOC);
return $active_data;
} 

这是我的示例查询我没有测试整个函数只有选择原因我不知道我是否需要使用数组..

1 个答案:

答案 0 :(得分:0)

我想你只想:

SELECT COUNT(*) as likes, COUNT(pc_comment) as comments
FROM pcomment
WHERE post_uid = '$puid';

COUNT(*)计算行数(在本例中为7)。 COUNT(<column name>)计算列中非NULL值的数量(在本例中为6)。