我有一个包含以下字段的数据库
Create table users
{
id int NOT NULL,
username varchar(255),
email varchar(255),
signup_date date,
PRIMARY KEY(id)
}
Create index user_index
On users (username)
该数据库允许多个用户拥有相同的用户名,因为我没有包含唯一关键字。我编写了一个 SQL 查询,该查询将为表中具有多个实例的所有用户名生成用户名列表和该用户名的最新 signup_date。
select username, MAX(signup_date)
group by username
但我还需要编写一个查询,该查询将为从上述查询返回的所有用户名生成唯一电子邮件地址列表,我想出了以下内容:
select distinct email
From users
Group by username
Having max(signup_date)
我的问题是我需要在Having语句之后写一个条件吗?还是我只需要省略 Have 子句,这会给我想要的结果?