MSSQL jak zrzucic zapytanie do tabeli
kurciok@poczta.onet.pl - 13-11-2006 00:44
MSSQL jak zrzucic zapytanie do tabeli
Witam jak w MSSQL zrzucic zapytanie np. Select * from pracownicy do nowej tabeli.
Chcialbym aby utworzyla mi sie nowa tabela która bedzie miala dokladnie te same kolumny które zwróci ten select oraz te same dane. Cos mi sie kolacze ze cos takie sie robilo polecenie
create table tmp from ( select * from pracownicy)
Ale ono chyba nie tak wygladalo I nie pod ta baza danych :)
Robert Winkler - 13-11-2006 00:44
> Chcialbym aby utworzyla mi sie nowa tabela która bedzie miala > dokladnie te same kolumny które zwróci ten select oraz te same dane.
select pole1, pole2, pole3 ... into nazwa_nowej_tabeli from nazwa_starej_tabeli where <warunek>
-- ____________ Robert Winkler
kurciok@poczta.onet.pl - 13-11-2006 00:44
Robert Winkler napisał(a): > > Chcialbym aby utworzyla mi sie nowa tabela która bedzie miala > > dokladnie te same kolumny które zwróci ten select oraz te same dane. > > select pole1, pole2, pole3 ... > into nazwa_nowej_tabeli > from nazwa_starej_tabeli > where <warunek>
No ale to mi nie stworzy nowej tabeli. Tylko przekopiuje dane z jednej do drugiej. I zauważ że ja w swoim przykładzie dałełm * (ja nie wiem jakie kolumny mi zwróci select) ale chce aby utworzyła mi się tabela która będzie miała te kolumny.
Robert Winkler - 13-11-2006 00:44
> No ale to mi nie stworzy nowej tabeli. Tylko przekopiuje dane z jednej do > drugiej. I zauważ że ja w swoim przykładzie dałełm * (ja nie wiem jakie > kolumny mi zwróci select) ale chce aby utworzyła mi się tabela > która będzie miała te kolumny.
Przy takiej konstrukcji
SELECT * INTO nazwa_nowej_tabeli FROM nazwa_stara_tabeli
Jeśli w bazie nie istnieje tabela o nazwie [nazwa_nowej_tabeli] to zostanie utworzona zgodnie z lista kolumn zwracanych przez to zapytanie i zgodnie z typami danych tych kolumn (nie zostana założone żadne indeksy ani klucz na nowej tabeli) Wielokrotnie z tego korzystałem zarówno w SQL'u 2000 jak i 2005
-- ____________ Robert Winkler
kurciok@poczta.onet.pl - 13-11-2006 00:44
Przy takiej konstrukcji > > SELECT * > INTO nazwa_nowej_tabeli > FROM nazwa_stara_tabeli > > Jeśli w bazie nie istnieje tabela o nazwie [nazwa_nowej_tabeli] > to zostanie utworzona zgodnie z lista kolumn zwracanych przez to zapytanie > i zgodnie z typami danych tych kolumn > (nie zostana założone żadne indeksy ani klucz na nowej tabeli) > Wielokrotnie z tego korzystałem zarówno w SQL'u 2000 jak i 2005
Aha ok rzeczywiście to chyba tak będzie działać. Mam jednak jeszcze jeden problem. Tak naprawdę nie chce zrzucić do tabeli danych z innej tabeli tylko z procedury. Myślałem że to nie ma znaczenia ale jednak ma bo polecenie:
Select * INTO tmp from sp_rap_sumoprweepts; -- sp_rap_sumoprweepts to procedura
nie odpala się. Trochę poszukałem http://pl.nntp2http.com/comp/bazy-da...237c63c35.html i tutaj pisze ze z procedury nie za bardzo się da i piszą jak to zorbić ;) ale tu jest opacja że trzeba podać nazwy kolumn tabeli (przy jej tworzeniu takze znowu jestem w punkcje wyjścia)
Jak wpisuje
INSERT INTO tmp EXEC sp_rap_sumoprweepts
to co prawda polecenie się kompiluje ale przy odpaleniu wywala błąd:
Invalid object name 'tmp'.
To pewnie dlatego że tabela tmp nie istnieje. No tylko że nie mogę jej stworzyć ;) poprzez zwykle create table bo nie wiem jakie ma mieć kolumny.
Cezar - 13-11-2006 00:44
Użytkownik <kurciok@poczta.onet.pl> napisał w wiadomości news:1161171412.313733.34320@b28g2000cwb.googlegro ups.com... <ciach>
Przy takiej konstrukcji INSERT INTO tmp EXEC sp_rap_sumoprweepts
to co prawda polecenie się kompiluje ale przy odpaleniu wywala błąd:
Invalid object name 'tmp'.
To pewnie dlatego że tabela tmp nie istnieje. No tylko że nie mogę jej stworzyć ;) poprzez zwykle create table bo nie wiem jakie ma mieć kolumny.
[Cezar] Tak na szybko mi wpadlo do glowy, zeby zrobic funkcje, ktora zwraca tabele. Wtedy
Select fn_Funkcja into tmp
powinno zadzialac. Ale nadmieniam ze strzelam i nie sprawdzalem.
-- Pozdr. Cezar
Marcin A. Guzowski - 13-11-2006 00:44
kurciok@poczta.onet.pl napisał(a): > (..)
http://strefa.guzowski.info/archives/5,2006,09,26.html
-- Pozdrawiam, Marcin Guzowski http://guzowski.info
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
Oracle, SQL, PL/SQL. Jak =?ISO-8859-2?Q?napisa=E6_zapytanie=2C?==?ISO-8859-2?Q?_kt=F3re_zwr=F3ci_nazw=EA_atrybutu=2C_kt=F3reg o?==?ISO-8859-2?Q?_warto=B6ci_spe=B3niaj=B1_zadany_warunek?=
=?ISO-8859-2?Q?Narz=EAdzie_do_budowania_zapyta=F1_SQL=2C?==?I SO-8859-2?Q?_PL/PgSQL=2C_PL/SQL=2C_T-SQL?=
[ms sql] =?ISO-8859-2?Q?wy=B6wietlenie_pierwszych_5_rekord?==?ISO-8859-2?Q?=F3w_z_zapytania_=3F_odpowiednik_ROWNUM_w_o?== ?ISO-8859-2?Q?raclu_dla_MS_SQL=27a?=
phpMyAdmin zadaje =?ISO-8859-2?Q?z=B3e_zapytania=2E=2E=2E_Dl?==?ISO-8859-2?Q?aczego=3F?=
[MSSQL2000] Problem z =?ISO-8859-2?Q?tabel=B1/indeksem/zapytanie?==?ISO-8859-2?Q?m_czy_b=B3=B1d_w_bazie_danych=2E=2E=2E?=
[mysql 5.x] jak =?ISO-8859-2?Q?zrealizowa=E6_zapytanie=3F_cz?==?ISO-8859-2?Q?yli_podzapytanie_i_wi=EAcej_ni=BF_jeden_rz=B1? ==?ISO-8859-2?Q?d_wynik=F3w?=
[mysql/php] jak =?ISO-8859-2?Q?zliczy=E6_ilo=B6=E6_unikalnyc?==?ISO-8859-2?Q?h_rekord=F3w_w_jednym_zapytaniu=3F?=
[MySQL] Zapytanie z =?ISO-8859-2?Q?dw=F3ch_tabel_na_raz_?==?ISO-8859-2?Q?i_grupowanie_po_wsp=F3lnym_polu=2E_Jak_=3F?=
mecze sie i mecze i nic - zapytanie czesciowe
[sql][pgsql] zapytanie sql
zanotowane.pldoc.pisz.plpdf.pisz.plptsite.xlx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|