Hola Eber:
En tu post no mencionas qué manejador de BD estás utilizando, ni tampoco mencionas de qué tipo de dato es tu columna (supongo que sería datetime pero sólo tú lo sabes). El manejo de fechas varia mucho entre los manejadores de BD, te pongo un ejemplo de cómo sería con SQL Server, si utilizas algún otro manejador sería cuestión de que encuentres la sintaxis adecuada:
declare @Tabla Table (hora datetime)
insert into @Tabla values (convert(datetime, '00:00', 108))
insert into @Tabla values (convert(datetime, '23:59', 108))
insert into @Tabla values (convert(datetime, '04:00', 108))
insert into @Tabla values (convert(datetime, '02:00', 108))
insert into @Tabla values (convert(datetime, '08:00', 108))
insert into @Tabla values (convert(datetime, '12:00', 108))
insert into @Tabla values (convert(datetime, '10:00', 108))
insert into @Tabla values (convert(datetime, '14:00', 108))
insert into @Tabla values (convert(datetime, '06:00', 108))
insert into @Tabla values (convert(datetime, '18:00', 108))
insert into @Tabla values (convert(datetime, '16:00', 108))
insert into @Tabla values (convert(datetime, '20:00', 108))
insert into @Tabla values (convert(datetime, '22:00', 108))
--Sin ordenamiento
select convert(varchar, hora, 108) hora from
-- Con el ordenamiento común
select convert(varchar, hora, 108) hora from @Tabla order by hora
--Con el ordenamiento especial
select convert(varchar, hora, 108) hora from @Tabla
order by
case when (hora >= convert(datetime, '06:00', 108) and hora <= convert(datetime, '23:59', 108)) then 1 else 2 end,
hora.
El resultado de estos select quedaría así
Sin ordenar|Ordenado común|Ordenado especial
----------------------------------------------------------------------
00:00:00|00:00:00|06:00:00
23:59:00|02:00:00|08:00:00
04:00:00|04:00:00|10:00:00
02:00:00|06:00:00|12:00:00
08:00:00|08:00:00|14:00:00
12:00:00|10:00:00|16:00:00
10:00:00|12:00:00|18:00:00
14:00:00|14:00:00|20:00:00
06:00:00|16:00:00|22:00:00
18:00:00|18:00:00|23:59:00
16:00:00|20:00:00|00:00:00
20:00:00|22:00:00|02:00:00
22:00:00|23:59:00|04:00:00
Como vez en el ordenamiento especial utilizo un case when y asigno una salida 1 para los elementos que quiero que aparezcan primero y un 2 para los que deben aparecer al final. Dale un vistazo y si continuas con problemas danos un poco más de información para no tener que estar adivinando.
Saludos
Leo.