Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

problema con top y order by.

Estas en el tema de problema con top y order by. en el foro de SQL Server en Foros del Web. Hola, estoy desarrollando un administrador de eventos el cual tiene un calendario. Los eventos no son agregados en orden cronologico, es decir hoy puedo agregar ...
  #1 (permalink)  
Antiguo 04/01/2010, 06:35
 
Fecha de Ingreso: octubre-2008
Mensajes: 140
Antigüedad: 15 años, 6 meses
Puntos: 1
problema con top y order by.

Hola, estoy desarrollando un administrador de eventos el cual tiene un calendario. Los eventos no son agregados en orden cronologico, es decir hoy puedo agregar un evento para abril y en febrero puedo agendar un evento para marzo. El problema es que yo solo quiero mostrar una cierta cantidad de registros para lo que uso "SELECT TOP 10 * FROM evento ORDER BY fecha" pero esto lo que hace es seleccionar el TOP 10 de los agregados y luego los ordena por fecha, yo lo que necesito es lo contrario, que os ordene por fecha y luego seleccione los 10 primeros.

Alguna idea?
  #2 (permalink)  
Antiguo 04/01/2010, 07:24
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
Respuesta: problema con top y order by.

Es raro, porque ese es el comportamiento que deberias obtener...
Anexo ejemplo..

Código:
if object_id('tempdb..#mytemp') is not null drop table #mytemp


create table #mytemp (iId  int primary key, dt_fecha datetime )

insert into #mytemp values(1, '20101231')
insert into #mytemp values(2, '20101229')
insert into #mytemp values(3, '20101228')
insert into #mytemp values(4, '20101227')
insert into #mytemp values(5, '20101226')
insert into #mytemp values(6, '20101225')
insert into #mytemp values(7, '20101224')
insert into #mytemp values(8, '20101223')
insert into #mytemp values(9, '20101222')
insert into #mytemp values(10, '20101221')
insert into #mytemp values(11, '20101220')
insert into #mytemp values(12, '20101219')
insert into #mytemp values(13, '20101218')
insert into #mytemp values(14, '20101217')
insert into #mytemp values(15, '20101216')
insert into #mytemp values(16, '20101215')
insert into #mytemp values(17, '20101214')
insert into #mytemp values(18, '20101213')
insert into #mytemp values(19, '20101212')
insert into #mytemp values(20, '20101211')
insert into #mytemp values(21, '20101210')
insert into #mytemp values(22, '20101209')

SELECT TOP 10 * FROM  #mytemp Order by dt_fecha
si quieres muestra tu code y estoy seguro que alguien te dara una alternativa de solucion..

Saludos!
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.

Última edición por Andres95; 04/01/2010 a las 07:32
  #3 (permalink)  
Antiguo 04/01/2010, 07:46
 
Fecha de Ingreso: octubre-2008
Mensajes: 140
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: problema con top y order by.

Creo que el problema no es el SQL sino la forma como muestro lso datos en PHP

Etiquetas: order, top
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:31.