Possible to implement a manual increment with just simple SQL INSERT?

后端 未结 11 1975
刺人心
刺人心 2021-01-05 11:54

I have a primary key that I don\'t want to auto increment (for various reasons) and so I\'m looking for a way to simply increment that field when I INSERT. By simply, I mean

11条回答
  •  死守一世寂寞
    2021-01-05 12:26

    This should work:

    INSERT INTO Table1 (id, data_field)
    SELECT (SELECT (MAX(id) + 1) FROM Table1), '[blob of data]';
    

    Or this (substitute LIMIT for other platforms):

    INSERT INTO Table1 (id, data_field)
    SELECT TOP 1
        MAX(id) + 1, '[blob of data]'
    FROM
       Table1
    ORDER BY
       [id] DESC;
    

提交回复
热议问题