[]
MongoDB Group (baya takıldım :s)
Database şu şekilde diyelim:
Country - League - Home - Away
England - 1. Division - United - Chelsea
England - 1. Division - Arsenal - City
England - 1. Division - Tottenham - Liverpool
England - 2. Division - Leeds - Nottingham
England - 2. Division - Portsmouth - Petersbrough
Belgium - 1. Division - Club Brugge - Anderlecht
Belgium - 1. Division - Lokeren - Blabla
Belgium - 1. Division - Gagaga - Zazaza
Belgium - 2. Division - Gogogo - Yayaya
Şimdi ben bunu ülke ve lige göre gruplamak ve aşağıdaki hale getirmek istiyorum. (Misal lig ve ülkeye göre gruplayacağım ve bunu title olarak yazacağım 'İngiltere 1. Division' şeklinde ve altında da o grubun maçlarını yazacağım)
1. England 1. Division
First match
second match
third match
2. England 2. Division
first match
second match
3. Belgium 1. Division
...
...
aggregate'le yapacağım ama çözemedim. inanılmaz karışık. veriyi nasıl basacağımı bir türlü bulamıyorum ve delirmenin eşiğine gelmiş vaziyetteyim.
Country - League - Home - Away
England - 1. Division - United - Chelsea
England - 1. Division - Arsenal - City
England - 1. Division - Tottenham - Liverpool
England - 2. Division - Leeds - Nottingham
England - 2. Division - Portsmouth - Petersbrough
Belgium - 1. Division - Club Brugge - Anderlecht
Belgium - 1. Division - Lokeren - Blabla
Belgium - 1. Division - Gagaga - Zazaza
Belgium - 2. Division - Gogogo - Yayaya
Şimdi ben bunu ülke ve lige göre gruplamak ve aşağıdaki hale getirmek istiyorum. (Misal lig ve ülkeye göre gruplayacağım ve bunu title olarak yazacağım 'İngiltere 1. Division' şeklinde ve altında da o grubun maçlarını yazacağım)
1. England 1. Division
First match
second match
third match
2. England 2. Division
first match
second match
3. Belgium 1. Division
...
...
aggregate'le yapacağım ama çözemedim. inanılmaz karışık. veriyi nasıl basacağımı bir türlü bulamıyorum ve delirmenin eşiğine gelmiş vaziyetteyim.
$hg = $collection1->aggregate(array(
array('$project'=>
array(
'lig_adi'=>1,
'ulke_adi'=>1,
'home'=>1
)
),
array( '$group' => array(
'_id' => array('lig_adi'=>'$lig_adi', 'ulke_adi'=>'$ulke_adi'),
"home" => array('$addToSet' => '$home'),
))
));
şeklinde yaptım ama bu kez de home boş basılıyor. acaba home ve away'i nasıl ekleyebilirim ki arraya :S
edit: tamamdır home değişkeninde ufak bir harf hatası yapmışım. formül doğru. bu gibi bir sorunla karşılaşırsanız rahatlıkla kullanın.
array('$project'=>
array(
'lig_adi'=>1,
'ulke_adi'=>1,
'home'=>1
)
),
array( '$group' => array(
'_id' => array('lig_adi'=>'$lig_adi', 'ulke_adi'=>'$ulke_adi'),
"home" => array('$addToSet' => '$home'),
))
));
şeklinde yaptım ama bu kez de home boş basılıyor. acaba home ve away'i nasıl ekleyebilirim ki arraya :S
edit: tamamdır home değişkeninde ufak bir harf hatası yapmışım. formül doğru. bu gibi bir sorunla karşılaşırsanız rahatlıkla kullanın.
- kamera motor (19.08.13 12:09:56 ~ 12:13:15)
1