ďťż
 
2 tabele w relacji 1 do wielu - tylko jeden wiersz ďťż
 
2 tabele w relacji 1 do wielu - tylko jeden wiersz
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

2 tabele w relacji 1 do wielu - tylko jeden wiersz



Michalek - 12-01-2006 09:31
2 tabele w relacji 1 do wielu - tylko jeden wiersz
  Firmy
-------
IDF Nazwa
1 Firma A
2 Firma B

Pracownicy
-----------
IDP IDF Imie Premia
1 1 Piotr 1000
2 1 Anna 2000
3 2 Wojtek 1500
4 2 Michal 1800

Jak widać są 2 firmy i w każdej z nich jest po 2 pracowników.
Zadanie :
Pokazać nazwę IDF, IDP, Nazwę firmy, imię pracownika,premie

Założenie.
Z każdej firmy wyciągamy tylko jednego pracownika - tego który ma mniejszą
premię.

Wynik powienien wyglądać tak :
1, 1, Firma A, Piotr, 1000
2, 3, Firma B, Wojtek, 1500

Zapytanie powinno działać na mySql'u i SQL Server 2000.

Z góry dziękuję
Michał





Smith - 12-01-2006 09:31

  Cześć

> Założenie.
> Z każdej firmy wyciągamy tylko jednego pracownika - tego który ma mniejszą
> premię.

A co w sytuacji jeżeli będzie dwóch lub więcej pracowników o takiej samej,
najniższej premii ?

> Zapytanie powinno działać na mySql'u i SQL Server 2000.

powinno działać :)

SELECT * FROM firmy f, pracownicy p
WHERE p.idf=f.idf
and premia<=(SELECT min(premia) FROM pracownicy WHERE idf=p.idf);

Pozdrawiam
Paweł




Slawomir Cichy - 16-01-2006 23:25

  Michalek wrote:
> Firmy
> -------
> IDF Nazwa
> 1 Firma A
> 2 Firma B
>
>
> Pracownicy
> -----------
> IDP IDF Imie Premia
> 1 1 Piotr 1000
> 2 1 Anna 2000
> 3 2 Wojtek 1500
> 4 2 Michal 1800
>
> Jak widać są 2 firmy i w każdej z nich jest po 2 pracowników.
> Zadanie :
> Pokazać nazwę IDF, IDP, Nazwę firmy, imię pracownika,premie
>
> Założenie.
> Z każdej firmy wyciągamy tylko jednego pracownika - tego który ma mniejszą
> premię.
>
> Wynik powienien wyglądać tak :
> 1, 1, Firma A, Piotr, 1000
> 2, 3, Firma B, Wojtek, 1500
>
> Zapytanie powinno działać na mySql'u i SQL Server 2000.
>

Szkoda, ze nie napisales, dla ktorej wersji mysql'a ma to dzialac. Do
wersji 4.0 wlacznie nie sa obslugiwane subselecty i masz problem.

Zapytanie moglo by wygladac tak:

select f.IDF, p.IDP, f.Nazwa, p.Imie, p.Premia from
Firmy f,
(select IDF, IDP, IMIE, min(Premia) as Premia from Pracownicy
group by IDF, IDP, IMIE ) p
where f.IDF = p.IDF

ps. tabele nie sa w relacjach, bo same sa relacjami, a lacza je zwiazki,
w tym przypadku zwiazek 1 do wielu

pozdrawiam
Slawas
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [MySQL] Skopiowanie =?ISO-8859-2?Q?warto=B6ci_z_jednego_po?==?ISO-8859-2?Q?la_do_drugiego_w_jednej_tabeli=2C_r=F3=BFne_?= =?ISO-8859-2?Q?wiersze=2E?= [mysql] =?ISO-8859-2?Q?po=B3=B1czenie_tabel_wg_kolumn=2C_?==?ISO-8859-2?Q?nie_wierszy?= =?ISO-8859-2?Q?=5BOracle=5D_Porownanie_wierszy_z_tych_?==?ISO-8859-2?Q?samych_tablic_na_2_r=F3=BFnych_schematach?= =?ISO-8859-2?Q?eksportuje_z_corela_do_bmp_albo_psd_?==?ISO-8859-2?Q?i_tylko_mi_sie_t=B3o_eksportuje?= Dwie bazy czy dwie tabele? [MySQL] Mysqldump i tabele o =?ISO-8859-2?Q?okre=B6lonych_prze?==?ISO-8859-2?Q?drostkach?= [PGSQL] Funkcje =?ISO-8859-2?Q?zwracaj=B1ce_=27rowset=27_i_?==?ISO-8859-2?Q?tabele_tymczasowe?= [MySQL] Jak =?ISO-8859-2?Q?zaprojektowa=E6_tabele=3F_Wyniki_?==?ISO-8859-2?Q?pojedynk=F3w=2C_meczy_-_tenis?= Jednoczesne sumowanie kolumn i wierszy oraz multiplikacja kolumn [MySQL] Wybierz tylko te rekordy z t1 =?ISO-8859-2?Q?kt=F3rych_?==?ISO-8859-2?Q?nie_ma_w_t2=2E_JOIN_=3F?=
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • numervin.keep.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