SQL lekerdezesbol strukturalt JSON
2015-03-09T01:13:21+01:00
2015-03-09T16:12:33+01:00
2022-08-09T11:41:51+02:00
cslaci86
Sziasztok.

3 tablat (orders, order_details esorder_added_extra_ingredients) kerdezek le az alabbi SQL paranccsal:

SELECT o.*,od.*,i.*
FROM orders AS o
INNER JOIN order_details AS od ON o.order_id = od.order_id
LEFT JOIN order_added_extra_ingredients AS i ON od.order_details_id = i.order_details_id


Tablak hierarchiaja
1. orders
    2. order_details
         3. order_added_extra_ingredients

Minden egyes rendeleshez (order) jar legalabb egy sor az order_details-ben (a rendelt termekek ID-jetol fuggoen)
Az order_added_extra_ingredients  pedig tartalmazza a hozzaadott extra feltetek listajat es mennyiseget. Itt a kulso kulcs az order_details tabla order_details_id attributuma.

A kerdesem az hogy a lekerdezes utan keletkezett nyers sorokbol (2015-03-08_2346 - Laci86's library) hogyan tudnek rendezett, hierarchikus objektumot kapni ami egy megrendeles ala teszi az osszes hozza tartozo informaciot es nem kulonbozo sorokba mint most. 
Cel:

0:{ order_id completed date_added products { 0:{ product_id product_name quantity ingredients { 0:{ id name quantity } 1:{ id name quantity } } } 1:{ product_id product_name quantity ingredients = "" } } } 1:{} 2:{} ... Cel struktura
Tehat vannak megredeles objektumok (remelhetoleg sok lesz a megrendeles :D ) melyek tartalmaznak szamot, sztringet vagy tovabbi objektumokat (a ket alarendelt tabla adatai)

En ugy gondolom hogy miutan megkaptam a lekerdezes eredmenyet utana at kell adnom az eredmenyt egy PHP funkcionak ami kialakit nekem egy ilyen objektumot. Jol gondolom vagy van valami jobb megoldas pl az SQL lekerdezeben?

Azon is gondolkoztam hogy atadom a nyers talalatot a kliens oldali JS kodnak hogy az fogja majd feldolgni, igy a server terheleset enyhithetem. Ez mennyire lenne jarhato ut?

Koszi elore is a valaszokat es bocs a sok melleszovegelesert 

Udv
Laci

PS. barmi nem vilagos szivesen tisztazom
Mutasd a teljes hozzászólást!
Én php-ban csinálnám meg. 3 egymásba ágyazott ciklussal egy struktúrált tömböt készítenék és azt json_encode()-dal konvertålnám json formátumba.
Mutasd a teljes hozzászólást!

abcd