W SQL Server powoduje to wstawienie 100 rekordów z tabeli Klienci do tmpFerdeen: -
SELECT top(100)*
INTO tmpFerdeen
FROM Customers
Czy jest możliwe wykonanie SELECT INTO w całej UNII ALL SELECT: -
SELECT top(100)*
FROM Customers
UNION All
SELECT top(100)*
FROM CustomerEurope
UNION All
SELECT top(100)*
FROM CustomerAsia
UNION All
SELECT top(100)*
FROM CustomerAmericas
Nie jestem pewien, gdzie dodać klauzulę INTO.
sql
sql-server
Ferdeen
źródło
źródło
Odpowiedzi:
Działa to w SQL Server:
źródło
W ogóle nie potrzebujesz do tego tabeli pochodnej.
Po prostu umieść
INTO
po pierwszymSELECT
źródło
Ten „Blablabal” jest konieczny
źródło
W przypadku zapytań MS Access to zadziałało:
To NIE zadziałało w MS Access
źródło
Zrobiłbym to tak:
źródło
Wyzwanie, które widzę w rozwiązaniu:
polega na tym, że tworzy to zestaw danych w oknie, który będzie rezydował w pamięci RAM, a przy większych zestawach danych to rozwiązanie spowoduje poważne problemy z wydajnością, ponieważ najpierw musi utworzyć partycję, a następnie użyje partycji do zapisu w tabeli tymczasowej.
Lepszym rozwiązaniem byłoby:
aby wybrać wstaw do tabeli tymczasowej, a następnie dodaj dodatkowe wiersze. Jednak wada polega na tym, że w danych występują zduplikowane wiersze.
Najlepszym rozwiązaniem byłoby:
Ta metoda powinna działać do wszystkich celów, które wymagają odrębnych wierszy. Jeśli jednak chcesz, aby zduplikowane wiersze po prostu zamień UNION na UNION ALL
Powodzenia!
źródło
Może spróbuj tego?
źródło
Spróbuj czegoś takiego: Utwórz ostateczną tabelę obiektów, tmpFerdeen ze strukturą unii.
Następnie
źródło