我想知道如何将一个表单独加入或使用 case 语句在视图中分配最大值。假设我有下表:
Lastname Firstname Filename
Smith John 001
Smith John 002
Smith Anna 003
Smith Anna 004
我想创建一个列出所有值的视图,但还有另一列显示当前行是否为最大行,例如:
Lastname Firstname Filename Max_Filename
Smith John 001 NULL
Smith John 002 002
Smith Anna 003 NULL
Smith Anna 004 NULL
这可能吗?我尝试了以下查询:
SELECT Lastname, Firstname, Filename, CASE WHEN Filename = MAX(FileName)
THEN Filename ELSE NULL END AS Max_Filename
但有人告诉我 Lastname 不在 group by 子句中。但是,如果我按姓氏、名字、文件名分组,那么 max_filename 中的所有内容都与文件名相同。
你能帮我理解我做错了什么以及如何使这个查询工作吗?