Dav*_*.ca 1 sql sql-server-2005
使用以下SQL很容易获取特定主键的值:来自特定表的ID:myTale:
DECLARE @v_maxID bigint;
SELECT @v_maxID = MAX(ID) FROM myTable;
Run Code Online (Sandbox Code Playgroud)
我需要的是一个通用SQL代码,用于从表中获取键的最大值,其中键和表都被指定为varchar(max)类型作为参数:
DECLARE @v_maxID bigint;
-- SELECT @v_maxID = MAX(@p_ID) FROM @p_Table;
Run Code Online (Sandbox Code Playgroud)
我注释掉SELECT,因为它不起作用.我试图构建一个SQL字符串,我可以执行它,但我无法将最大值恢复到我的本地变量(@v_maxID).有什么建议?
DECLARE @max bigint, @sql nvarchar(max)
SET @sql = N'SELECT @max = MAX(' + @p_ID + ') FROM ' + @p_Table
EXEC sp_executesql
@query = @sql,
@params = N'@max bigint OUTPUT',
@max = @max OUTPUT
PRINT @max
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1623 次 |
| 最近记录: |