Compartir a través de


Recuperación de registros mediante Access SQL

La instrucción SQL más básica y usada con más frecuencia es la instrucción SELECT . Las instrucciones SELECT son los caballos de trabajo de todas las instrucciones SQL y normalmente se conocen como consultas select. Use la instrucción SELECT para recuperar datos de las tablas de base de datos y los resultados se devuelven normalmente en un conjunto de registros (o filas) formado por cualquier número de campos (o columnas). Debe usar la cláusula FROM para designar de qué tabla o tablas seleccionar. La estructura básica de una instrucción SELECT es:

SELECT field list  
    FROM table list

Para seleccionar todos los campos de una tabla, use un asterisco (*). Por ejemplo, la siguiente instrucción selecciona todos los campos y todos los registros de la tabla Customers.

SELECT * 
    FROM tblCustomers 

Si quiere limitar los campos recuperados en la consulta, basta con que use los nombres de campo. Por ejemplo:

SELECT [Last Name], Phone 
    FROM tblCustomers 

Para designar un nombre diferente para un campo del conjunto de resultados, use la palabra clave AS para establecer un alias para ese campo.

SELECT CustomerID AS [Customer Number] 
    FROM tblCustomers 

Restricción del conjunto de resultados

Con más frecuencia que no, no querrá recuperar todos los registros de una tabla. Solo querrá un subconjunto de esos registros en función de algunos criterios de calificación. Para calificar una instrucción SELECT , debe usar una cláusula WHERE , que le permitirá especificar exactamente qué registros desea recuperar.

SELECT * 
    FROM tblInvoices 
    WHERE CustomerID = 1 

Tenga en cuenta la CustomerID = 1 parte de la cláusula WHERE . Una cláusula WHERE puede contener hasta 40 de estas expresiones, que pueden estar unidas mediante los operadores lógicos And y Or. El uso de varias expresiones le permitirá excluir los registros que no necesita del conjunto de resultados.

SELECT * 
    FROM tblInvoices 
    WHERE CustomerID = 1 AND InvoiceDate > #01/01/98# 

Recuerde que la cadena de fecha se especifica entre signos de número (#). Si usa una cadena normal en una expresión, deberá especificarla entre comillas simples ('). Por ejemplo:

SELECT * 
    FROM tblCustomers 
    WHERE [Last Name] = 'White' 

Si no conoce el valor de cadena completo, puede usar caracteres comodín con el operador Like .

SELECT * 
    FROM tblCustomers 
    WHERE [Last Name] LIKE 'W*' 

Se pueden usar varios caracteres comodín. En la tabla siguiente se recoge cuáles son y el uso que se les puede dar.

Carácter comodín Descripción
* Cero o más caracteres
? Cualquier carácter
# Un único dígito (0-9)
[ charlist ] Cualquier carácter de listaDeCaracteres
[! charlist ] Un único carácter no incluido en listaDeCaracteres

Ordenar el conjunto de resultados

Para especificar un criterio de ordenación determinado en uno o varios campos del conjunto de resultados, use la cláusula ORDER BY opcional. Los registros se pueden ordenar en orden ascendente (ASC) o descendente (DESC); ascendente es el valor predeterminado.

Los campos a los que se hace referencia en la cláusula ORDER BY no tienen que formar parte de la lista de campos de la instrucción SELECT y la ordenación se puede aplicar a valores de cadena, numéricos y de fecha y hora. Coloque siempre la cláusula ORDER BY al final de la instrucción SELECT.

SELECT * 
    FROM tblCustomers 
    ORDER BY [Last Name], [First Name] DESC 

También puede utilizar los números de campo (o posiciones) en lugar de los nombres de campo en la cláusula ORDER BY.

SELECT * 
    FROM tblCustomers 
    ORDER BY 2, 3 DESC 

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.