我有一个包含用户信息的表。
mysql> desc accounts;
+-------------+------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+------------+------+-----+---------+----------------+
| cid | int(11) | NO | PRI | NULL | auto_increment |
| username | text | YES | | NULL | |
| password | text | YES | | NULL | |
| mysignature | text | YES | | NULL | |
| is_admin | varchar(5) | YES | | NULL | |
+-------------+------------+------+-----+---------+----------------+
5 rows in set (0.01 sec)
正常的 group by 语句总是后跟一个或多个列名,如下所示:
select * from accounts group by cid;
只是一个例子,通常group by
适用于聚合函数,如sum()
.
我发现一些后面的表达式没有我无法理解的列名:
mysql> select username from accounts group by now();
+----------+
| username |
+----------+
| admin |
+----------+
1 row in set (0.00 sec)
我是 MySQL 新手。这个查询是如何工作的?谢谢。