Say table1
i table2
już istnieje, jest jakaś różnica między tymi zapytaniamiSQL Server 'select * w' kontra „insert into ..wybierz *
QUERY1: -
select * into table1 from table2 where 1=1
QUERY2: -
insert into table1 select * from table2
Say table1
i table2
już istnieje, jest jakaś różnica między tymi zapytaniamiSQL Server 'select * w' kontra „insert into ..wybierz *
QUERY1: -
select * into table1 from table2 where 1=1
QUERY2: -
insert into table1 select * from table2
select * into table1 from table2 where 1=1
tworzy tabelę1 i wstawia w nich wartości tabeli 2. Tak więc, jeśli tabela jest już utworzona, ta instrukcja spowodowałaby błąd.
Dodaje tylko wartości z tabeli 2 w tabeli1.
Nie wiedziałem o błędzie, który byłby generowany przez zapytanie-1, gdyby tabela istniała. Dziękuję Ci bardzo ! –
pierwszy z nich (SELECT INTO
) stworzy i wypełnić nową tabelę drugi (INSERT... SELECT
) wstawia do istniejącej tabeli.
W wersjach SQL Server sprzed roku 2008 pierwszy może być minimalnie zalogowany, a drugi nie, ale nie jest to this is no longer true.
W QUERY2 tabela table1
koniecznością istnieć przed uruchomieniem komendy
W Kwerenda1, table1
zostanie utworzony lub błąd zostanie wyrzucony jeśli już istnieje
select * into table1 from table2 where 1=1
zapytaniu powyższemu wymaga, aby tabela NIE istniała. Nie trzeba określać kolumn, ponieważ wszystkie kolumny są tworzone, ponieważ są pobierane z tabeli źródłowej.
insert into table1 select * from table2
Dla powyższego zapytania potrzebna jest EXISTING table1. Kolumny w obu tabelach powinny być w dokładnie tej samej kolejności, w przeciwnym razie należy podać listę kolumn dla obu tabel.
INSERT INTO TABLE_A SELECT * FROM TABLE_B
Jest to często używane zdanie, które służy do wstawiania wartości tabeli do innej tabeli. Wybrane kolumny można również wstawiać za pomocą tego.
SELECT * INTO TABLE_A FROM TABLE_B
utworzenie nowego table_a wypełniany z wartościami table_b
możliwe duplikat [INSERT INTO vs SELECT INTO] (http://stackoverflow.com/questions/6947983/insert-into-vs-select -into) i kilku innych – gbn