SELECT COUNT(*) AS Members,
CASE INTERVAL( rankOrder, 14, 26, 38, 48 )
WHEN -1 THEN "NULL"
WHEN 0 THEN "Flag"
WHEN 1 THEN "SO"
WHEN 2 THEN "JO"
WHEN 3 THEN "NCO"
WHEN 4 THEN "ENL"
END AS RankCat,
CASE INTERVAL( loa, 1, 3, 4)
WHEN -1 THEN "NULL"
WHEN 0 THEN "Active"
WHEN 1 THEN "LoA"
WHEN 2 THEN "AWOL"
WHEN 3 THEN "FTR"
END AS LoACat
FROM sms_crew
GROUP BY RankCat,LoACat;
The code runs, but the results returned seem to only be grouped by LoACat; the RankCat grouping gets thrown away.