Mam zapytanie INSERT INTO SELECT
. W instrukcji SELECT
mam podzapytanie, w którym chcę dodać przyrostową liczbę w polu. To zapytanie będzie działać poprawnie, jeśli moje zapytanie SELECT
i zwróci tylko jeden rekord, ale jeśli zwróci wiele wierszy, wstawi tę samą liczbę w polu przyrostowym dla wszystkich tych wierszy. Czy istnieje sposób, aby go ograniczyć, aby za każdym razem dodać przyrostowy numer?Dodawanie liczby inkrementalnej w polu w zapytaniu INSERT INTO SELECT w SQL Server
INSERT INTO PM_Ingrediants_Arrangements_Temp
(AdminID,ArrangementID,IngrediantID,Sequence)
(SELECT
@AdminID, @ArrangementID, PM_Ingrediants.ID,
(SELECT
MAX(ISNULL(sequence,0)) + 1
FROM
PM_Ingrediants_Arrangements_Temp
WHERE
[email protected])
FROM
PM_Ingrediants
WHERE
PM_Ingrediants.ID IN (SELECT
ID
FROM
GetIDsTableFromIDsList(@IngrediantsIDs))
)
dla trzeciej opcji nie trzeba wykonywać automatycznej inkrementacji pola sekwencji. Potrzebuję pobrać istniejącą liczbę z sekwencji i wstawić następną liczbę przyrostową w tej kolumnie –
Scnerio 2 działa w moim stanie. bardzo dziękuję za natychmiastową pomoc. –
:: jeśli moja kolumna squence nie zezwala na wartości null i moja tabela nie ma już żadnych rekordów. wyjątek wyrzucania .... –