y porque no agregas un campo orden en tu tabla asi ordenas por ese campo y lo demas no te importa :), porque desde el order by no creo que se pueda :S ya que necesitas que la G o algun otro dato este en un orden diferente, te evitarias muchos problemas agregando el campo orden...
Código SQL:
Ver originalCREATE TABLE #temp
(
name VARCHAR(50),
orden INT
)
INSERT INTO #temp VALUES ('Giftcards',8)
INSERT INTO #temp VALUES ('ABARROTES', 1)
INSERT INTO #temp VALUES ('BEBIDAS', 4)
INSERT INTO #temp VALUES ('ARTICULOS DE LIMPIEZA', 3)
INSERT INTO #temp VALUES ('ALIMENTOS Y ACCESORIOS PARA MASCOTAS', 2)
INSERT INTO #temp VALUES ('PRODUCTOS DESECHABLES Y DE PAPEL', 6)
INSERT INTO #temp VALUES ('CUIDADO PERSONAL Y COSMETICOS', 5)
INSERT INTO #temp VALUES ('TODO PARA BEBE', 7)
SELECT name FROM #temp ORDER BY orden ASC
ABARROTES
ALIMENTOS Y ACCESORIOS PARA MASCOTAS
ARTICULOS DE LIMPIEZA
BEBIDAS
CUIDADO PERSONAL Y COSMETICOS
PRODUCTOS DESECHABLES Y DE PAPEL
TODO PARA BEBE
Giftcards
saludos!