Portanto, a partir dos comentários e da adição do SqlFiddle, parece que você deseja criar um número de linha particionado com precedência em US por plataforma e, em seguida, selecione o primeiro registro. Uma maneira de fazer números de linha particionados no mysql é usar variáveis aqui é um exemplo:
SELECT
territory_id
,platform_type_id
,store_url
FROM
( SELECT
*
,@PlatFormRowNum:= IF(@prevplatform = platform_type_id, @PlatFormRowNum + 1, 1) as PlatformRowNum
,@prevplatform:= platform_type_id
FROM
main_itemmaster m
CROSS JOIN (SELECT @prevplatform:='',@PlatFormRowNum=0) var
ORDER BY
platform_type_id
,CASE WHEN territory_id = 'US' THEN 0 ELSE 1 END
,territory_id
) t
WHERE
t.PlatformRowNum = 1
ORDER BY
t.platform_type_id
SQL Fiddle:http://sqlfiddle.com/#!9/81c3b6/12
Basicamente, isso particiona o número da linha por plataforma, ordena US antes de qualquer outro território e, em seguida, seleciona a primeira linha para a plataforma. A única pergunta/truque é como você escolhe qual retornar quando o US não está disponível para a plataforma simplesmente a ordem alfabética crescente do Território_id?