【发布时间】:2022-01-03 20:06:42
【问题描述】:
如何选择 ID 等于最大 ID 的键的行。由于 ID 是作为唯一主键自动生成的。
SELECT * FROM TABLE WHERE Key = "Test" AND WHERE ID = max(ID)
我试过了,但它执行但返回空白。
SELECT * FROM Table WHERE Key= "Test" AND ID=(SELECT max(ID) FROM Table);
【问题讨论】:
-
你几乎是正确的,你忘记了内部查询条件:
SELECT * FROM Table WHERE ID=(SELECT max(ID) FROM Table Where Key= "Test"); -
如果将
WHERE子句移动到子查询中,将会得到更好的结果 -
按key分组,在组中查找max(ID)。
-
在我将 Where Key="Test" 添加到子查询后现在可以使用。感谢 Mani 和 HoneyBadger。
-
有没有办法调用除 ID 列之外的每一列 (*)?
标签: sql sql-server ms-access