具有标识的SQL表中的其他自动编号
如何在SQL表中获取额外的自动编号。 我已经有一个标识列,但我需要一个附加列,该列也可以自动递增。有一组标识列可用于此。例如,您可以像这样使用ROW_NUMBER函数:具有标识的SQL表中的其他自动编号,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,如何在SQL表中获取额外的自动编号。 我已经有一个标识列,但我需要一个附加列,该列也可以自动递增。有一组标识列可用于此。例如,您可以像这样使用ROW_NUMBER函数: SELECT *, ROW_NUMBER() OVER (ORDER BY somefield) rownum FROM table; 您可以使用一组。例如,您可以像这样使用ROW_NUMBER函数: SELECT *, ROW_NUMBER() OVER (ORDER BY somefield) rownum FROM ta
SELECT *, ROW_NUMBER() OVER (ORDER BY somefield) rownum
FROM table;
您可以使用一组。例如,您可以像这样使用ROW_NUMBER函数:
SELECT *, ROW_NUMBER() OVER (ORDER BY somefield) rownum
FROM table;
你可以这样做 假设您有一个columnName为ColA的表,这是您想要增加的
INSERT INTO tableName (colA, colB)
SELECT COALESCE((SELECT MAX(colA) + 1 FROM tableName),1) as ColA,
'colBValue' AS colB
FROM tableName
你可以这样做 假设您有一个columnName为ColA的表,这是您想要增加的
INSERT INTO tableName (colA, colB)
SELECT COALESCE((SELECT MAX(colA) + 1 FROM tableName),1) as ColA,
'colBValue' AS colB
FROM tableName
如果您有两个自动递增的列,那么它们必须始终相差一个常量,所以正确执行此操作不会有任何价值?如果您真的希望它是一列,那么您可以根据自动递增列的值将其设置为计算列。如果您有两个自动递增列,那么它们必须始终相差一个常量,所以这样做不会有任何价值,对吗?如果您真的希望它是一个列,那么您可以根据自动递增列的值将其设置为计算列,我可以在存储过程中使用它吗?@Josefvz您可以在任何地方使用这些函数集。它们是Transact-SQL语言中的内置函数,就像任何其他函数一样,您可以在任何地方使用它。在存储过程、udf、视图等中……我能在存储过程中使用它吗?@Josefvz您可以在任何地方使用这些函数集。它们是Transact-SQL语言中的内置函数,就像任何其他函数一样,您可以在任何地方使用它。在存储过程、udf、视图等中。。