sql >> Databáze >  >> RDS >> Sqlserver

Jak mohu zvýšit hodnotu pro každou iteraci INSERT INTO?

použijte číslo_řádku funkce, která vašim řádkům přiřadí pořadová čísla

insert into Table1 (column1,column2)
select 
    (select max(column1) from Table1) + row_number() over (order by T2.anotherColumn),
    T2.anotherColumn
from Table2 as T2

nebo bezpečnější verze (fungovala by, i když v tabulce1 nemáte žádné řádky):

insert into Table1 (column1,column2)
select 
    isnull(T1.m, 0) + row_number() over (order by T2.anotherColumn),
    T2.anotherColumn
from Table2 as T2
    outer apply (select max(column) as m from Table1) as T1


  1. Jak najít zaměstnance s druhým nejvyšším platem?

  2. Jak změnit uživatele na superuživatele v PostgreSQL

  3. MySQL transakce a trigger

  4. PHP PDO Připravený příkaz vázat hodnotu NULL