ďťż
 
Łączenie tylko kilku kolumn z większych tabel ďťż
 
Łączenie tylko kilku kolumn z większych tabel
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

Łączenie tylko kilku kolumn z większych tabel



floran - 28-06-2006 00:08
Łączenie tylko kilku kolumn z większych tabel
  Witam

Mam pytanie, jak złączyć tylko wybrane kolumny z kilku wielkich tabel
(zawierających po kilkanaście kolumn) a później na nich wykonać zapytanie ?
Czy jest taka możliwość czy tylko całe tabele można łączyć ze sobą ?

pozdrawiam





Brzezi - 28-06-2006 00:08

  wto, 27 cze 2006 o 07:52 GMT, floran napisał(a):

> Czy jest taka możliwość czy tylko całe tabele można łączyć ze sobą ?

a czy jest mozliwosc pobrania tylko wybranych kolumn z jednej tabeli czy
trzeba wszystkie poberac naraz? bosz....

Pozdrawiam
Brzezi
--
[ E-mail: brzezi@enter.net.pl ][ o komiku : ]
[ Ekg: #3781111 ][ Oko mi kur.. wybili ! (zalosnie) ]
[ LinuxUser: #249916 ][ ]




=?ISO-8859-2?Q?Cezary_Gr=B1dys?= - 28-06-2006 00:08

  floran napisał(a):
> Witam
>
> Mam pytanie, jak złączyć tylko wybrane kolumny z kilku wielkich tabel
> (zawierających po kilkanaście kolumn) a później na nich wykonać zapytanie ?
> Czy jest taka możliwość czy tylko całe tabele można łączyć ze sobą ?
>
> pozdrawiam
>
>

W postgresie zadziała coś takiego:

select * from
(select id,pole1 from a) X
join
(select id,pole2 from b) Y ON X.id=Y.id;

--
Czarek




floran - 28-06-2006 00:08

  > W postgresie zadziała coś takiego:
>
> select * from
> (select id,pole1 from a) X
> join
> (select id,pole2 from b) Y ON X.id=Y.id;

Chodzi o firebird





Brzezi - 28-06-2006 00:09

  wto, 27 cze 2006 o 09:06 GMT, Cezary Grądys napisał(a):

> select * from
> (select id,pole1 from a) X
> join
> (select id,pole2 from b) Y ON X.id=Y.id;

ale po co podzapytania?

Pozdrawiam
Brzezi
--
[ E-mail: brzezi@enter.net.pl ][ Cropp's Law: ]
[ Ekg: #3781111 ][ The amount of work done varies ]
[ LinuxUser: #249916 ][ inversly with the time spent in the ]
[ office. ]




Migat - 28-06-2006 00:09
=?iso-8859-2?q?Re:_=A3=B1czenie_tylko_kilku_kolumn_z_wi=EAksz ych_tabel?=
  Cezary Grądys wrote:
> select * from
> (select id,pole1 from a) X
> join
> (select id,pole2 from b) Y ON X.id=Y.id;

To cos (jezeli zadziala) i tak bedzie dzialolo tak samo jak:
select a.id,b.id,pole1,pole2 from a join b on a.id = b.id;
(pomijajac ze b.id nie powinno byc wogole wyciagane).

Nie zapominajcie, ze SQL to nie C tylko jezyk deklaratywny i
optymalizacja zapytan SQL'owych w taki sposob nie ma sensu bo i tak
pozniej sa one optymalizowane na nizszej warstwie.
Moim zdaniem nie ma sensu wybierac kolumn do zlaczenia - teoretycznie
ilosc danych w zlaczeniu i czas jego wykonywania bedzie zalezny od
ilosci pol ale w praktyce tak nie jest, poniewaz baza analizujac
zapytanie najpierw analizuje liste pol, a nie jak w teoretycznym
podejsciu tworzy iloczyn kartezjanski.

Pzdr PawelB




=?ISO-8859-2?Q?Cezary_Gr=B1dys?= - 30-06-2006 00:07

  Migat napisał(a):
> Cezary Grądys wrote:
>
>>select * from
>>(select id,pole1 from a) X
>>join
>>(select id,pole2 from b) Y ON X.id=Y.id;
>
>
> To cos (jezeli zadziala) i tak bedzie dzialolo tak samo jak:
> select a.id,b.id,pole1,pole2 from a join b on a.id = b.id;
> (pomijajac ze b.id nie powinno byc wogole wyciagane).
>
> Nie zapominajcie, ze SQL to nie C tylko jezyk deklaratywny i
> optymalizacja zapytan SQL'owych w taki sposob nie ma sensu bo i tak
> pozniej sa one optymalizowane na nizszej warstwie.
> Moim zdaniem nie ma sensu wybierac kolumn do zlaczenia - teoretycznie
> ilosc danych w zlaczeniu i czas jego wykonywania bedzie zalezny od
> ilosci pol ale w praktyce tak nie jest, poniewaz baza analizujac
> zapytanie najpierw analizuje liste pol, a nie jak w teoretycznym
> podejsciu tworzy iloczyn kartezjanski.
>
> Pzdr PawelB
>
No jasne, ale pytanie brzmiało:
'jak złączyć tylko wybrane kolumny z kilku wielkich tabel
(zawierających po kilkanaście kolumn) a później na nich wykonać
zapytanie ? ' Nie wiadomo czy chodziło o optymalizację, czy coś innego
(np ciekawość czy tak można)
Faktycznie lepiej dać te kolumny zamiast * w select, a reszte pozostawić
bazie.

--
Czarek
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [mysql] =?ISO-8859-2?Q?wielko=B6=E6_bazy_a_stabilno=B6=E6=2C?==?ISO-8859-2?Q?_podzia=B3_du=BFej_bazy_a_powi=B1zania_tabel?= [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] Wyszukanie =?ISO-8859-2?Q?rekord=F3w=28powiazane_tabel?==?ISO-8859-2?Q?e=29?= [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?= zapytanie do =?ISO-8859-2?Q?dw=F3ch_tabel_z_limitem_wier?==?ISO-8859-2?Q?szy?= Jak =?ISO-8859-2?Q?zamieni=E6_dwa_pola_jednej_kolumny_?==?ISO-8859-2?Q?w_dw=F3ch_rekordach_za_pomoc=B1_jednego_zapyt? ==?ISO-8859-2?Q?ania=3F?= ms sql server - =?ISO-8859-2?Q?domy=B6lny_format_kolumn_ty?==?ISO-8859-2?Q?pu_datetime?= [ORACLE] Dodanie kolumny typu BLOB - =?ISO-8859-2?Q?wp=B3yw_na?==?ISO-8859-2?Q?_wydajno=B6c?= Zapytanie SQL z =?ISO-8859-2?Q?pust=B1_tabel=B1?= [MySQL] Backup tabel przez "BACKUP" i problem z prawami dostępu :(
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • quentinho.opx.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