ďťż
 
MSSQL jak zrzucic zapytanie do tabeli ďťż
 
MSSQL jak zrzucic zapytanie do tabeli
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

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.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    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.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • ptsite.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

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com