FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Select ordenado por un campo pero localizado por otro
Hola a todos .. Estoy reemplazando en un sistema en produccion los componentes tTable por tQuerys ya que no es optimo el tiempo de respuesta.
Mi consulta es por lo siguiente : en un ABM tengo 2 flechas para ir al registro siguiente y al anterior y a su vez 2 radios para ordenar por codigo o por descripcion ...con el TTable no habia problema porque hacia un select * order by coigo o descripcion y con las flechas y la instrucciones prior o next la recorria ..pero.. Ahora, cuando entro al ABM hago un 'select * from articulos where codigo_articulo =: codigo' para posicionarme y mostrar. Cuando me muevo con las flechas ( si tengo marcado ordenado por codigo) hago al mismo select pero con el parametro codigo+1 o codigo-1 PERO si lo ordenan por 'descripcion' es donde viene mi complicacion porque busco por codigo pero tengo que ir al siguiente o al anterior POR DESCRIPCION .. No me parece optimo buscar por el campo descripcion poqeu no se el tamaño del string a buscar como para hacer un .. where descripcion like 'algo%' y atinarle a la descripcion siguiente. Se me ocurre hacer algun tipo de consulta que me devuelva x cantidad de registros ANTES y x cantidad DESPUES de MI CODIGO pero ordenado por descripcion ... el problema es que no se como .. seria algo asi como select * from articulos where codigo_articulo =:codigo or (10 para arriba) or (10 para abajo) order by descripcion se entendió? se puede hacer algo asi ? con el viejo Recno() de clipper se podria , creo que la nueva version de SQL ya lo trae..pero por ahora dispongo solo de SQL 2000 gracias .. saludos Ingel |
|
|
|