0
我的MySQL的知識是有限的,以最基礎的,但今天我需要做一個複雜的任務,我不知道如何做到以下幾點:如何根據比較將整個結果查詢劃分爲多個類別?
我有一個包含三個表列:SEX
,SITUATION
和NUMBER
。這張表格在這裏給出了一個關於有多少人是男性/女性,如果他們仍然活躍並且他們的部門中有多少人的想法(這些是其他專欄但是使用它們是沒有用的)。
所以,如果我參加了一個隨機行從該表中,我能得到
(
[SEX] => 'FEMALE',
[SITUATION] => 'ACTIVE',
[NUMBER] => 198
)
我的目標是,當我做我的SQL請求時,它給回4「組」包含的總和「可能性:有多少人是活躍的婦女,退休婦女,活躍的男性和退休老人我想結果應該是這樣的:
(
[active_women] => 8452,
[retired_women] => 123,
[active_men] => 9523,
[retired_men] => 876
)
我這是怎麼處理的結果,使用PHP,如果它可以幫助你:
// $results contains the result of "SELECT SEX, NUMBER, SITUATION FROM table";
foreach($results as $i => $result) {
if($result->SEX === 'MAN') {
if($result->SITUATION === 'ACTIVE') {
$stat1['active_men'] += $result->NUMBER;
}
else {
$stat1['retired_men'] += $result->NUMBER;
}
}
elseif ($result->SEX === 'WOMAN') {
if($result->SITUATION === 'ACTIF') {
$stat1['active_women'] += $result->NUMBER;
}
else {
$stat1['retired_women'] += $result->NUMBER;
}
}
}
任何幫助是值得歡迎的,謝謝你提前
是的我認爲這是正確的答案,你只需要顯示在PHP的結果,而不是試圖再次做所有的處理。只需循環播放結果並顯示即可! –
所以我嘗試了你的代碼,它*幾乎*做我所需要的,但是它計數'女性','積極'等迭代,但不是數字。是否有可能在總結與它們相關的「NUMBER」(在我的例子中,「NUMBER」等於198) – Jaeger
@Jaeger我想知道NUMBER的意義是什麼以及您是否想要或者只是數人。感謝您的澄清。 –