我使用以下命令计算今天在mySQL中添加的行数
mysql_query("SELECT COUNT(*) as total
FROM track
WHERE FROM_UNIXTIME(date,'%Y-%m-%d %h:%m:%s') > NOW() - INTERVAL 1 DAY");这是成功的。但是,我还想计算今天添加的行数,这些行数在其名为"conv“的列中包含一个大于"0”的数字。
我试过了
mysql_query("SELECT conv,COUNT(*) as total
FROM track
WHERE FROM_UNIXTIME(date,'%Y-%m-%d %h:%m:%s') > NOW() - INTERVAL 1 DAY");但这不算数。这样做的正确方法是什么?
发布于 2013-04-08 16:10:47
这将对行数和conv大于零的行数进行计数:
SELECT
COUNT(*) AS total,
COUNT(CASE WHEN conv THEN 1 END) AS total_conv_greater
FROM
...如果count CASE WHEN将返回一个非NULL值,否则将返回Null,conv>0 ()将只计算非NULL值。
发布于 2013-04-08 16:09:51
我认为使用CASE语法会有很大的帮助
资源链接(source)
https://stackoverflow.com/questions/15874195
复制相似问题