在没有 where 子句的 SQL 查询中选择什么值作为参数

What value is selected into parameter in SQL query without where clause

比如我有这个查询

SELECT @param = column from table

什么值被拉入@param?

我试过了,但无法弄清楚正在提取的值。不是旧记录也不是新记录。

documentation 状态:

the variable is assigned the last value that is returned

但是,如果没有唯一标识行的 WHERE 子句,也没有指定唯一排序值的 ORDER BY 子句,则当 table不止一行。

您可以将 ORDER BY 添加到 return 最后排序行的查询中。一种更有效的方法是使用 SELECT TOP(1)...ORDER BY...DESC。相反,SELECT TOP(1)...ORDER BY...ASC 将 return 第一个有序行。同样,列的顺序对于确定性值必须是唯一的。

这是引用列中的值。似乎它应该有一个 TOP 1,其中一个 WHERE 子句旨在仅获取 1 行。