Mam kilka pytań dotyczących SQL bo właśnie przygotowuje się do egzaminu. To dopiero początki i sporo pracy jeszcze przede mną i mam trochę za dużo niewiadomych.
W załączniku mam tabelę na których bazuję. Proste polecenia z SELECT w miarę opanowałem ale mam problem z pobieraniem informacji z dwóch tabel.
Mianowicie takie zadanie:
Pokaż nazwy wyrobów dostarczonych w pierwszym kwartale 2002 roku dla projektu P4.
No i nie do końca wiem jak łączyć te tabele w SQL. W sieci jedni coś piszą o jakimś Inner Join - drudzy to jakoś normalnie piszą po kolei.
Ja wpadłem na coś takiego:
SELECT Wyroby.WNAZWA from Wyroby where Dostawy.DATA BETWEEN '01.01-2012' AND '31-03-2012'AND Dostawy.P_ID=P4; Ma to jakikolwiek sens czy jakoś inaczej się to robi?
@Vojak: select distinct w.wnazwa from dostawy d inner join wyroby w on w.wid = d.wid where d.data >= '20120101' and d.data < '20120401' and d.p_id = 'P4'
@schiri: na studiach z baz danych. Już jestem po - trochę pokombinowałem bo za mało czasu na naukę niestety miałem przez pracę. Zobaczymy co z tego wyjdzie.
W załączniku mam tabelę na których bazuję. Proste polecenia z SELECT w miarę opanowałem ale mam problem z pobieraniem informacji z dwóch tabel.
Mianowicie takie zadanie:
Pokaż nazwy wyrobów dostarczonych w pierwszym kwartale 2002 roku dla projektu P4.
No i nie do końca wiem jak łączyć te tabele w SQL. W sieci jedni coś piszą o jakimś Inner Join - drudzy to jakoś normalnie piszą po kolei.
Ja wpadłem na coś takiego:
SELECT Wyroby.WNAZWA
from Wyroby
where Dostawy.DATA BETWEEN '01.01-2012' AND '31-03-2012'AND Dostawy.P_ID=P4;
Ma to jakikolwiek sens czy jakoś inaczej się to robi?
#sql #pytanie #kiciochpyta #pytaniedoeksperta
AND Dostawy.W_ID = Wyroby.W_ID
select distinct w.wnazwa from dostawy d
inner join wyroby w on w.wid = d.wid
where d.data >= '20120101' and d.data < '20120401' and d.p_id = 'P4'
@Vojak: To nie jest normalnie i za implicit joiny powinno się ręce ucinać.