小编Dan*_*dja的帖子

MySQL计数行

我如何根据其内容计算行?假设我有这样的表

[表a]

ID_COMPANY   |   NAME
-----------------------------
A1           |   COMPANY A
Run Code Online (Sandbox Code Playgroud)


[表b]

ID_COMPANY    |    USER     |    TYPE
--------------------------------------
A1            |   USER A    |   MANAGER
A1            |   USER B    |   DEPT001
A1            |   USER C    |   CUSTOMR
A1            |   USER D    |   DEPT002
A1            |   USER E    |   CUSTOMR
Run Code Online (Sandbox Code Playgroud)

我怎么能得到这样的结果?

ID_COMPANY  |    NAME   |  TOTAL_MANAGER  | TOTAL_STAFF_DEPT  | TOTAL_CUST
----------------------------------------------------------------------------
A1          | COMPANY A |              1  |                2  |          1
Run Code Online (Sandbox Code Playgroud)

大家好

mysql count

2
推荐指数
1
解决办法
1073
查看次数

MySQL需要帮助..如何过滤max(date)

我有一张这样的表

[表a]
UID | UNAME
------------------
001 | a
002 | b
003 | C

[表b]
UID | LOGS
----------------------
001 | 2009/08/01
001 | 2009/08/03
003 | 2009/08/02

我想要一个像这个
UID | 的查询 LASTLOG
--------------------
001 | 2009/08/03
002 | NULL
003 | 2009/08/02

结果我已经做到了,但我遇到了一个问题,而我想添加过滤器lastlogin,假设我输入过滤器显示所有用户在'2009/08/03'之前有lastlogin,我想要这样的结果

UID | LASTLOG
--------------------
003 | 2009/08/02

消除了UID 001,因为001在2009/08/03有lastlogin

我使用这样的sql命令

SELECT a.uid, max(logs.date)
FROM user a LEFT JOIN logs ON (a.uid = logs.uid)
where max(logs.date)<'2009/08/03'
group by a.uid
Run Code Online (Sandbox Code Playgroud)

如何在2009/08/03之前添加过滤器以仅显示max(logs.date),因为第3行"其中max(logs.date)<'2009/08/03'导致错误无效的按功能分组.谢谢

mysql sql syntax max

1
推荐指数
1
解决办法
5773
查看次数

标签 统计

mysql ×2

count ×1

max ×1

sql ×1

syntax ×1