İkiden fazla mysql tablolarını birleştirme sonra gruplandırılmış çokboyutlu içine satır manipüle

0 Cevap php

Birden myqsl tabloları birleştirmek için çalışıyorum ve sonra da süreç PHP kullanarak diziler sonuçta ama ben isterim mihraklarını almak için benim verileri manipüle sorunlar yaşıyorum.

table.users
+---------------
uid
name

table.profile_values
+-----------------------
fid
uid
category_value

table.profile_fields
+---------------------
fid
category_title

İşte benim sql sorgu:

SELECT users.name, profile_fields.category_title, profile_values.category_value FROM profile_values 
    INNER JOIN profile_fields
        ON profile_values.fid=profile_fields.fid
    INNER JOIN users
        ON users.uid=profile_values.uid
    ORDER BY users.name ASC

Fetch_array üzerinde döngü (), beklendiği gibi, ben gibi bir şey görünüyor her satır sayısı için bir dizi elde ederken I kullanma:

Array (
    [0] => Array (
            [name] => Bob
            [category_title] => Occupation 
            [category_value] => IT
            ) 
    [1] => Array ( 
            [name] => Bob 
            [category_title] => Previous Experience 
            [category_value] => Very little.
            ) 
    ...
)

Ben aslında oluşturmak için arıyorum çıktı:

Array( 
    [name] => array(
            [category_title 1] => value 1
            [category_title 2] => value 2
            ...
    )
    ....
)

Ben çeşitli örneklere bakarak bir gün geniş bir kısmını geçirdim ve benim verileri katmayacak ve grup için en iyi yer anlamamıza yardımcı olur birini bulmak mümkün olmamıştır. I examples istediğimi benzer GROUP_CONCAT kullanarak gördüm, ama ben mümkünse diziler benim verileri tutmak istiyorum.

Ben satır diziler atanan sonra benim sql deyiminde GROUP BY, ya da her ikisinin bir arada kullanarak, bir iç içe foreach döngüleri kullanarak olmalıdır?

0 Cevap