mysql - 按用户名分组时查询返回错误结果

标签 mysql

我想显示每天的结果数(登录数)。我的查询的问题是它返回错误的值。我认为问题在于分组。有人知道问题出在哪里吗?

此外,logaction 行可以包含 1-4 的数字,因此我想计算每天 1、2、3 和 4 中有多少行。

这是我正在使用的代码:

SELECT  username, DATE( Vrijeme) AS Datum, COUNT( logaction ) AS total
FROM user_login_action
WHERE DATE( Datum ) >=  '2015-04-06'
AND DATE( Datum ) <=  '2015-04-12'
AND username !=  ''
GROUP BY DATE( Datum ) , username

最佳答案

您查询中的一个问题是:
您在 SELECT 之后有 DATE(Vrijeme) AS Datum 但您在 WHERE 中使用了 DATE(Datum) >分组依据

此查询是否返回您想要的结果:

SELECT
    username, 
    DATE(Vrijeme) AS Datum, 
    COUNT( logaction ) AS total
FROM
    user_login_action
WHERE 
    DATE(Vrijeme) >=  '2015-04-06'
  AND 
    DATE(Vrijeme) <=  '2015-04-12'
  AND 
    username !=  ''
GROUP BY 
    DATE(Vrijeme),
    username

关于mysql - 按用户名分组时查询返回错误结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29598539/

相关文章:

java - 数据库单元测试 (MySQL)

mysql - 使用 Case 语句创建存储过程

php - 我可以在 PDO 中使用列名作为参数吗?

mysql - SQL:如何添加具有最小值的列

php - Laravel (php) 保存搜索选项

mysql - rails : User specific sequential column

sql - 从表中选择 n 个最大值

mysql - 多对多共轭表中未定义分区

mysql - 执行数据库查询时出错

php - SQLSTATE[42S22] : Column not found: 1054 Unknown column '$Valuess' in 'field list' '