[MySQL] wynik z dwoch tabel
grzessiek - 11-05-2007 12:32
[MySQL] wynik z dwoch tabel witam,
mam 2 tabele
1. PRODUKTY
id nazwa ----------------- 1 PRODUKT 1 2 PRODUKT 2
2. OPISY
produkt_id lang opis ------------------------------- 1 pl bla bla 1 en bla bla 2 pl bla bla
Potrzebuję pobrać nazwę produktu i jego opis w zadanym języku. Wszystko jest proste, jeżeli opis w tym języku istnieje.
Problem pojawia się, jeżeli pobieram PRODUKT 2 i opis w języku 'en'. Opisu w tym języku nie ma, więc moje zapytania nic nie zwracają, a ja potrzebuję jako wynik coś takiego:
nazwa opis -------------------------------------- PRODUKT 2 NULL (lub pusty string)
dziękuję i pozdrawiam, g.
keczerad - 11-05-2007 12:32
grzessiek napisał(a): > > witam, > > mam 2 tabele > > 1. PRODUKTY > > id nazwa > ----------------- > 1 PRODUKT 1 > 2 PRODUKT 2 > > > 2. OPISY > > produkt_id lang opis > ------------------------------- > 1 pl bla bla > 1 en bla bla > 2 pl bla bla > > > Potrzebuję pobrać nazwę produktu i jego opis w zadanym języku. Wszystko > jest proste, jeżeli opis w tym języku istnieje. > > Problem pojawia się, jeżeli pobieram PRODUKT 2 i opis w języku 'en'. > Opisu w tym języku nie ma, więc moje zapytania nic nie zwracają, a ja > potrzebuję jako wynik coś takiego: > > nazwa opis > -------------------------------------- > PRODUKT 2 NULL (lub pusty string) >
LEFT JOIN
--
keczerad
http://www.e-mo.com.pl sklep w (X)HTML wraz z modulem do Subiekta GT
Grzegorz Danowski - 11-05-2007 12:32
Dnia Sun, 06 May 2007 16:57:14 +0200, grzessiek napisał(a):
> witam, > > mam 2 tabele > > 1. PRODUKTY > > id nazwa > ----------------- > 1 PRODUKT 1 > 2 PRODUKT 2 > > > 2. OPISY > > produkt_id lang opis > ------------------------------- > 1 pl bla bla > 1 en bla bla > 2 pl bla bla > > > Potrzebuję pobrać nazwę produktu i jego opis w zadanym języku. Wszystko > jest proste, jeżeli opis w tym języku istnieje. > > Problem pojawia się, jeżeli pobieram PRODUKT 2 i opis w języku 'en'. > Opisu w tym języku nie ma, więc moje zapytania nic nie zwracają, a ja > potrzebuję jako wynik coś takiego: > > nazwa opis > -------------------------------------- > PRODUKT 2 NULL (lub pusty string) > > > dziękuję i pozdrawiam, g.
Left Join się kłania, np:
Select id, opis From Produkty As P Left Join Opisy As O On P.id = O.produkt_id And O.lang = 'en'
Pozdrawiam Grzegorz
grzessiek - 11-05-2007 12:32
Grzegorz Danowski wrote: > Select > id, opis > From > Produkty As P > Left Join > Opisy As O > On > P.id = O.produkt_id > And > O.lang = 'en'
dzieki wielkie, nie działało mi bo stosowałem niewłaściwie klauzulę WHERE :
[...] *WHERE* O.lang = 'en'
g.
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
[mysql] =?ISO-8859-2?Q?Za=E6mienie=2E=2E=2E_jak_wy=B6wietli=E6?==?ISO-8859-2?Q?=2E=2E=2E?=
[MySQL] =?ISO-8859-2?Q?Wy=B6wietlenie_kolejnej_pozycji=2C_?==?ISO-8859-2?Q?jak=B1_mia=B3by_dany_rekord=2C_gdybym_czyta=B3 _?==?ISO-8859-2?Q?wg_konkretnych_kryteri=F3w=2E_Da_si=EA_=3F?=
[mysql 4.0.x] przenoszenie kolum =?ISO-8859-2?Q?mi=EAdzy_bazam?==?ISO-8859-2?Q?i_cd_=2E=2E=2E_?=
[MySQL] =?ISO-8859-2?Q?z=B3=B1czenie_tabeli_u=BFytkownik_i?==?ISO-8859-2?Q?_zdj=EAcia_z_wyborem_zdj=EAcia_domy=B6lnego?=
[MySQL] Jak =?ISO-8859-2?Q?wpisa=E6_do_tabeli_pozycje_dl?==?ISO-8859-2?Q?a_wierszy_gdybym_te_wiersze_wybiera=B3_w_ok?== ?ISO-8859-2?Q?re=B6lonej_kolejno=B6ci_=3F?=
Gdzie MySQL 4.1, a gdzie 5.0?
[MySQL 4.0...4.1] zabezpieczenie przed =?ISO-8859-2?Q?jednoczesn?==?ISO-8859-2?Q?=B1_edycj=B1?=
[MS SQL] "set names" (mySQL) w MS SQL
MySQL - jak =?ISO-8859-2?Q?wyeksportowa=E6_zawarto=B6=E6_wie?==?ISO-8859-2?Q?lkiej_tabeli?=
[MySQL] Czy da =?ISO-8859-2?Q?si=EA_wykonac_takie_powi=B1z?==?ISO-8859-2?Q?anie_mi=EAdzy_tabelami=2C_i_jak_to_odpyta=E6_? ==?ISO-8859-2?Q?=3F?=
zanotowane.pldoc.pisz.plpdf.pisz.plred-hacjenda.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 |
|