Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: karmany en 21 Febrero 2006, 18:37 pm



Título: Cómo ordenar los registros de dos campos?
Publicado por: karmany en 21 Febrero 2006, 18:37 pm
Hola a todos.
Tengo una base de datos con una tabla: tabla1, en esta tabla sólo he puesto dos campos: referencia1 y referencia2.
referencia1 tiene estos registros: 1,5,15,13
referencia2 tiene estos registros: 2,17,7,22

He accedido a la base de datos mediante un control de datos Data.
Yo lo que he hecho es seleccionar todos los registros de la tabla1 (es decir, todos los registros de los campos referencia1 y referencia2) que comiencen por 1.
Lo he conseguido de este modo: 
   
Código:
Data1.RecordSource = "SELECT * FROM Tabla1 WHERE referencia2 LIKE '1*' or referencia1 LIKE '1*' "

Pero mi pregunta es: ¿Cómo puedo conseguir ordenar los registros para que se ordenen según he hecho en Data1.RecordSource?

Es decir, si yo tengo un textbox en mi formulario que enlaza a la referencia2 al pasar los registros uno a uno tendría que ver este orden: 2,22,7,17. ¿Entendéis mi pregunta verdad?

Muchísimas gracias por la ayuda.


Título: Re: Cómo ordenar los registros de dos campos?
Publicado por: Ironhorse en 21 Febrero 2006, 18:55 pm
Con la clausula ORDER BY campo1, campo2 ...

Código:
Data1.RecordSource = "SELECT * FROM Tabla1 WHERE referencia2 LIKE '1*' or referencia1 LIKE '1*' ORDER BY referencia2"


Título: Re: Cómo ordenar los registros de dos campos?
Publicado por: karmany en 21 Febrero 2006, 23:17 pm
Gracias por la ayuda pero no me vale.
Si lo pongo de esa forma que me dices sólo lo ordena por referencia2, es decir, el resultado final en el textbox si no me equivoco será: 17,2,22,7.

Yo lo que quiero hacer es que lo ordene de forma "global", referencia1 y referencia2 a la vez.

Yo lo que he estado haciendo es ORDER BY referencia1 and referencia2 y he probado muchas combinaciones, utilizando también or, pero no lo consigo, y estoy casi seguro que la solución a mi problema no tiene que ser muy diferente de esto que comento. Pero no lo logro.

Espero que alguien sepa hacerlo..


Título: Re: Cómo ordenar los registros de dos campos?
Publicado por: Ironhorse en 22 Febrero 2006, 20:25 pm
La sintaxis de ORDER BY no es con 'AND' o con 'OR',  los campos a ordenar se separan por comas.

Citar
Si lo pongo de esa forma que me dices sólo lo ordena por referencia2, es decir, el resultado final en el textbox si no me equivoco será: 17,2,22,7.

Te devuelve eso si el campo es texto, si es numerico te devuelve 2,7,17,22.