mysql - 根据计数结果选择不同的数据

标签 mysql sql

我有一个非常简单的查询:

 SELECT users.id, COUNT(others.id) as c
 FROM users JOIN other ON users.id=others.user_id 
 GROUP BY users.id

我想做的是当c=0时用''替换c中的数字。

例如,而不是一行

 # I have this
 1, 0
 2, 1

 # I want c=0 replaced with ''
 1, ''  
 2, 1

我如何在 MySQL 中执行此操作?

最佳答案

试试这个:

SELECT users.id, IF(COUNT(others.id) = 0, '', COUNT(others.id)) as c
FROM users JOIN other ON users.id=others.user_id 
GROUP BY users.id

关于mysql - 根据计数结果选择不同的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9788735/

相关文章:

sql - 我需要找到一种方法来删除 SQL Server 备份文件夹中第三个 .bak 文件之后的所有内容

mysql - 当关键字包含符号时​​sphinx搜索错误

java - 将多个日期格式更改为一个日期格式的sql函数

java - JDBC 根据列中的值发现行

php - MYSQL PHP API - 在另一个表的行中显示和获取多行

php - MySQL 需要在 join 右表无值时显示 0,带累积

sql - PostgreSQL 中 date_part 函数的语法错误

php - Symfony2 将选定的日期从表单保存到数据库作为 DateTime

php - Wordpress通过Sql手动添加数据

sql - Mysql 到 Rails SQL 查询