Topic: Sudėtingas SELECT
įrašai MySQL'e (jų išviso turėtų būti 300) pvz.:
Array(
'id' => 1,
'komanda_sveciuose' => 16,
'komanda_namuose' => 14,
'komanda_sveci_taskai' => 65,
'komanda_namie_taskai' => 78
),
Array(
'id' => 2,
'komanda_sveciuose' => 14,
'komanda_namuose' => 16,
'komanda_sveci_taskai' => 65,
'komanda_namie_taskai' => 78
)
Išviso yra 30 komandų.
Man reikia, kad išmestų 3 lenteles ir kiekvienoje iš tų lentelių bus po 10 komandų. Tais komandas turi išmesti pagal pergaliu/pralaimėjimo procentą. Jį apskaičiuoti galima pvz.:
(SUM(IF(`komanda_sveciuose` < `komanda_namuose`, 1, 0))+(SUM(IF(`komanda_sveciuose` < `komanda_namuose`, 0, 1)))/(SUM(IF(`komanda_sveciuose` < `komanda_namuose`, 1, 0)))) AS lyg
Be to komandos jau yra paskirstytos į kuria lentelę jos eina tai yra ar į pirmą ar į antrą ar į trečią. Pavyzdyje sudėliota iš eilės, o tikrovėje bus tikrai ne iš eilės.
pvz.:
<?php
$grupe[0] = 1;
$grupe[0] = 2;
$grupe[0] = 3;
$grupe[0] = 4;
$grupe[0] = 5;
$grupe[0] = 6;
$grupe[0] = 7;
$grupe[0] = 8;
$grupe[0] = 9;
$grupe[0] = 10;
$grupe[1] = 11;
$grupe[1] = 12;
$grupe[1] = 13;
$grupe[1] = 14;
$grupe[1] = 15;
$grupe[1] = 16;
$grupe[1] = 17;
$grupe[1] = 18;
$grupe[1] = 19;
$grupe[1] = 20;
$grupe[2] = 21;
$grupe[2] = 22;
$grupe[2] = 23;
$grupe[2] = 24;
$grupe[2] = 25;
$grupe[2] = 26;
$grupe[2] = 27;
$grupe[2] = 28;
$grupe[2] = 29;
$grupe[2] = 30;
?>
Man tai labai padėtų GROUP BY `komanda_namuose`, bet GROUP BY neužtenka tik namams jo reikia ir svečiams, o jeigu išeitų kaip nors juos abu sukišt į vieną GROUP BY tada būtų gerai... Nes dabar niekaip nesugalvoju kaip padaryt vieną užklausą vietoj dviejų ir plius dar kai dvi turi dar su PHP turi dirbt, kad vėl ir ten ir ten esančias komandas sugrupuot kaip tai padaro GROUP BY...
Kaip galvojat, nes aš nelabai turiu minčių...