több (3) táblából történő lekérdezés (drupal5)
sziasztok!
van egy weboldalam, ahol különböző anyagokat lehet letölteni.
a következőképpen vannak tárolva az anyagok: (drupal 5 cms-ről van szó)
NODE tábla:
nid,type,title,status oszlopok kellenek
CONTENT_TYPE_PRODUCT tábla:
nid,product_id,area oszlopok kellenek
a táblákból így kérdeztem le az adatok:
ez eddig rendben is van, viszont szeretnék vhogy beletenni ebbe a listába egy oszlopot ami azt mutatná, h melyik anyagot hányszor töltötték le.
viszont ez egy 3. (DOWNLOADS) táblában van tárolva.
DOWNLOADS tábla:
id,nid,timestamp
itt minden sor 1-1 letöltés, szval a COUNT(nid) kellene nekem, és ezt szeretném egy új oszlopként megjeleníteni.
2 lépésben megoldottam:
amikor a fenti query eredmémyét fetch_object-el feldolgozom, minden körben csinálok egy sima SELECT COUNT(nid) FROM downloads WHERE ... lekérdezést.
a probléma az, h az eredményt egy rendezhető táblázatban jeleníti meg, és amikor a "letöltések száma" oszlop szerint rendezném, akkor leakad, mert az eredeti query-ben nincs "letöltések száma" oszlop.
tehát a kérdés az lenne, h van vmi mód arra, h 3 különböző táblából kérdezzek le adatok egy query-ben?
előre is köszönöm!
■ van egy weboldalam, ahol különböző anyagokat lehet letölteni.
a következőképpen vannak tárolva az anyagok: (drupal 5 cms-ről van szó)
NODE tábla:
nid,type,title,status oszlopok kellenek
CONTENT_TYPE_PRODUCT tábla:
nid,product_id,area oszlopok kellenek
a táblákból így kérdeztem le az adatok:
$query = "SELECT n.nid, n.title, n.status, p.field_updatetime_value, p.field_area_value, p.field_product_id_value
FROM node n INNER JOIN content_type_product p
USING(nid)
".$conditionsString." ".tablesort_sql($header);
FROM node n INNER JOIN content_type_product p
USING(nid)
".$conditionsString." ".tablesort_sql($header);
ez eddig rendben is van, viszont szeretnék vhogy beletenni ebbe a listába egy oszlopot ami azt mutatná, h melyik anyagot hányszor töltötték le.
viszont ez egy 3. (DOWNLOADS) táblában van tárolva.
DOWNLOADS tábla:
id,nid,timestamp
itt minden sor 1-1 letöltés, szval a COUNT(nid) kellene nekem, és ezt szeretném egy új oszlopként megjeleníteni.
2 lépésben megoldottam:
amikor a fenti query eredmémyét fetch_object-el feldolgozom, minden körben csinálok egy sima SELECT COUNT(nid) FROM downloads WHERE ... lekérdezést.
a probléma az, h az eredményt egy rendezhető táblázatban jeleníti meg, és amikor a "letöltések száma" oszlop szerint rendezném, akkor leakad, mert az eredeti query-ben nincs "letöltések száma" oszlop.
tehát a kérdés az lenne, h van vmi mód arra, h 3 különböző táblából kérdezzek le adatok egy query-ben?
előre is köszönöm!
Ha kettőből megy
Amennyiben nem megy, akkor kérlek valami kézzelfoghatóbb infót írj, mert amit leírtál az számomra nem egy egész.
Valami ilyesmi?
köszönöm a segítséget, úgy
igazából azzal nem voltam tisztában, h 2nél több táblát lehet e JOINolni, és ha igen hogyan.
(guglival rákerestem de mindehol csak 2 tábla összekapcsolását találtam
de valszeg az én figyelmetlenségem miatt nem találtam példát)
szval kösz még1x
további szép napot :)