Array birleştirmeyle ilgili iki farklı fonksiyonu aşağıda yazdım. Ancak yapmak istediğini biraz daha detaylı anlarsam daha güzel bir cevap verebileceğimi düşünüyorum. Anladığım kadarıyla
* 3 farklı tablon var *isimler 1. tabloda. *maaşlar 2. tabloda *günler 3. tabloda ilk tablodaki isimlerin ikinci tablodaki maaşlara eşit olduğu kayıtları çekiyorsun. ayrıca 3. tablodaki günleri de alıp topluyorsun. Doğru mudur? Kaynak: http://www.php.net/manual/en/function.array-combine.php Kaynak: http://www.php.net/manual/en/function.array-merge.php array *array_combine* ( array $keys , array $values ) ilk array'deki anahtarları, ikinci arraydeki değerlerle birleştirir. <?php $a = array('green', 'red', 'yellow'); $b = array('avocado', 'apple', 'banana'); $c = array_combine($a, $b); print_r($c); ?> Çıktısı şöyle olur: Array ( [green] => avocado [red] => apple [yellow] => banana ) array *array_merge* ( array $array1 [, array $array2 [, array $... ]] ) her array'in sonuna bir sonraki array eklenmiş haliyle yeni bir array döndürür. <?php $array1 = array("color" => "red", 2, 4); $array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4); $result = array_merge($array1, $array2); print_r($result); ?> Çıktısı şöyle olur: Array ( [color] => green [0] => 2 [1] => 4 [2] => a [3] => b [shape] => trapezoid [4] => 4 ) 11 Ocak 2011 22:37 tarihinde Coskun <[email protected]> yazdı: > Arkadaşlar Selam, > > Bir şey soracaktım, > > Örnek vererek anlatıcam, iki SQL sorgum var. Birisinde SUM fonksiyonu > kullandığımdan, istediğim sonucu bir seferde alamıyorum . > > 1- > Select tablo1.isim, tablo2.maas > From tablo1, tablo2 > where tablo1.isim = tablo2.maas > > 2- > Select sum(tablo3.gun), tablo1.isim > from tablo1, tablo2 > where tablo1.isim = tablo3.isim > > İlk sorum, bu yaptığım tek sorguda yapılabilir miydi? > Eğer yapılamıyorsa, bunu PHP'de şöyle yapmayı düşünmüştüm. Fakat kod olarak > yardıma ihtiyacım var. Birinci sorguda 10000 kayıt dönüyor, diğeri 1000 > tane: > > Birinci sorgunun sonucunu bir diziye, ikinci sorgunun sonucunu ikinci > diziye aktarıp; sonra bunları üçüncü bir dizide birleştirerek, istediğim > sonuca ulaşıcam. > > Yani, algoritma şöyle olucak sanki, fakat eminim siz daha güzel bişey > önerirsiniz: > > Loop at dizi1 > Loop at dizi 2 > if dizi1.isim = dizi2.isim > dizi3.isim = dizi1.isim; > dizi3.gun = dizi2.gun > dizi3.maas = dizi1.maas > endloop > endloop > > Şimdiden teşekkürler, tekrar selamlar. > > _______________________________________________ > Linux-programlama mailing list > [email protected] > https://liste.linux.org.tr/mailman/listinfo/linux-programlama > Liste kurallari: http://liste.linux.org.tr/kurallar.php > >
_______________________________________________ Linux-programlama mailing list [email protected] https://liste.linux.org.tr/mailman/listinfo/linux-programlama Liste kurallari: http://liste.linux.org.tr/kurallar.php
