Sunteți pe pagina 1din 14

4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

Access SQL:
conceptos
básicos,
vocabulario y
sintaxis
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

En este artículo...
¿Qué es SQL?

Cláusulas SQL básicas: SELECT, FROM y WHERE

Ordenar los resultados: ORDER BY

Trabajar con datos resumidos: GROUP BY y HAVING

Combinar los resultados de las consultas: UNION

¿Qué es SQL?
SQL es un lenguaje de computación para trabajar con
conjuntos de datos y las relaciones entre ellos. Los programas
de bases de datos relacionales, como Microsoft Office Access,
usan SQL para trabajar con datos. A diferencia de muchos
lenguajes de computación, SQL no es difícil de leer y
entender, incluso para un usuario inexperto. Al igual que
muchos lenguajes de computación, SQL es un estándar
internacional reconocido por organismos de estándares como
ISO y ANSI.

SQL se usa para describir conjuntos de datos que pueden


ayudarle a responder preguntas. Al usar SQL, debe usar la
sintaxis correcta. La sintaxis es el conjunto de reglas mediante
las que se combinan correctamente los elementos de un
idioma. La sintaxis SQL se basa en la sintaxis del idioma inglés
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

y usa muchos de los mismos elementos que la sintaxis de


Visual Basic para Aplicaciones (VBA).

Por ejemplo, una simple instrucción SQL que recupera una


lista de los apellidos de contactos cuyo nombre es María
podría ser similar a esto:
SELECT Last_Name
FROM Contacts
WHERE First_Name = 'Mary';

Nota: SQL no se usa solo para manipular datos, sino también


para crear y modificar el diseño de objetos de base de datos,
como tablas. El elemento de SQL que se usa para crear y
modificar objetos de base de datos se denomina lenguaje de
definición de datos (DDL). Este tema no trata el DDL. Para
obtener más información, vea el artículo Crear o modificar
tablas o índices mediante una consulta de definición de datos.
Instrucciones SELECT

Para describir un conjunto de datos con SQL, se escribe una


instrucción SELECT. Una instrucción SELECT contiene una
descripción completa de un conjunto de datos que quiere
obtener de una base de datos. Se incluye lo siguiente:

• Qué tablas contienen los datos.


• Cómo se relacionan los datos de orígenes diferentes.
• Qué campos o cálculos proporcionarán los datos.
• Criterios que los datos deben cumplir para ser incluidos.
• Si se deben ordenar los datos y, en caso de ser así,
cómo deben ordenarse.
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

Cláusulas SQL

Como una frase, una instrucción SQL tiene cláusulas. Cada


cláusula realiza una función de la instrucción SQL. Algunas
cláusulas son necesarias en una instrucción SELECT. En la
siguiente tabla, se enumeran las cláusulas SQL más comunes.

Cláusula
Función Obligatorio
SQL
Muestra una lista de los campos que
SELECT Sí
contienen datos de interés.
Muestra las tablas que contienen los
FROM Sí
campos de la cláusula SELECT.
Especifica los criterios de campo que
WHERE cada registro debe cumplir para No
poder ser incluido en los resultados.
ORDER Especifica la forma de ordenar los
No
BY resultados.
En una instrucción SQL que contiene
GROUP funciones de agregado, muestra los Solo si están
BY campos que no se resumen en la estos campos
cláusula SELECT.
En una instrucción SQL que contiene
funciones de agregado, especifica las
HAVING condiciones que se aplican a los No
campos que se resumen en la
instrucción SELECT.

Términos de SQL
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

Cada cláusula SQL se compone de términos, comparables a


elementos de la oración. En la siguiente tabla, se enumeran
los tipos de términos de SQL.

Elemento
Término de de la
Definición Ejemplo
SQL oración
comparable
Nombre que se
usa para
identificar un
Clientes.[Número
identificador sustantivo objeto de la base
de teléfono]
de datos, como
el nombre de un
campo.
Palabra clave
verbo o que representa o
operador AS
adverbio modifica una
acción.
Valor que no
cambia, como
constante sustantivo un número o un 42
valor nulo
(NULL).
Combinación de
>=
identificadores,
expresión adjetivo Productos.[Precio
operadores,
por unidad]
constantes y
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

Elemento
Término de de la
Definición Ejemplo
SQL oración
comparable
funciones que se
evalúa como un
valor único.

Principio de página

Cláusulas SQL básicas: SELECT,


FROM y WHERE
Una instrucción SQL tiene el formato general:
SELECT field_1
FROM table_1
WHERE criterion_1
;

Notas:

• Access pasa por alto los saltos de línea en una


instrucción SQL. En cambio, conviene usar una línea para
cada cláusula para que las instrucciones SQL sean más
fáciles de leer por todos.
• Cada una de las instrucciones SELECT termina con un
punto y coma (;). El punto y coma puede aparecer al
final de la última cláusula o solo en una línea al final de
la instrucción SQL.
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

Un ejemplo en Access

A continuación se muestra el aspecto que podría tener en


Access una instrucción SQL para una consulta de selección
simple:

1. Cláusula SELECT

2. Cláusula FROM

3. Cláusula WHERE

En este ejemplo de instrucción SQL, se indica "Seleccionar los


datos almacenados en los campos Dirección de correo
electrónico y Empresa de la tabla llamada Contactos,
específicamente aquellos registros en los cuales el valor del
campo Ciudad sea Seattle".

A continuación se incluye un ejemplo y se describe cada


cláusula para mostrar cómo funciona la sintaxis SQL.
Cláusula SELECT

SELECT [E-mail Address], Company


4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

Esta es la cláusula SELECT. Se compone de un operador


(SELECT) seguido de dos identificadores ([Dirección de correo
electrónico] y Empresa).

Si un identificador contiene espacios o caracteres especiales


(como "Dirección de correo electrónico"), se debe escribir
entre corchetes.

Una cláusula SELECT no tiene que mencionar las tablas que


contienen los campos y no puede especificar las condiciones
que deben cumplir los datos que se van a incluir.

La cláusula SELECT siempre aparece antes que la cláusula


FROM en una instrucción SELECT.
Cláusula FROM

FROM Contacts

Esta es la cláusula FROM. Se compone de un operador


(FROM) seguido de un identificador (Contactos).

Una cláusula FROM no enumera los campos que se van a


seleccionar.
Cláusula WHERE

WHERE City="Seattle"

Esta es la cláusula WHERE. Se compone de un operador


(WHERE) seguido de un identificador (Ciudad="Seattle").
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

Nota: A diferencia de las cláusulas SELECT y FROM, la cláusula


WHERE no es un elemento obligatorio en una instrucción
SELECT.

Puede llevar a cabo muchas de las acciones que le permite


realizar SQL con las cláusulas SELECT, FROM y WHERE. En
estos artículos adicionales se presenta más información sobre
cómo usar estas cláusulas:

• Access SQL: cláusula SELECT


• Access SQL: cláusula FROM
• Access SQL: cláusula WHERE

Principio de página

Ordenar los resultados: ORDER


BY
Como Microsoft Excel, Access le permite ordenar los
resultados de la consulta en una hoja de datos. También
puede especificar en la consulta cómo quiere ordenar los
resultados al ejecutar la consulta, mediante una cláusula
ORDER BY. Si usa una cláusula ORDER BY, es la última
cláusula en la instrucción SQL.

Una cláusula ORDER BY contiene una lista de los campos que


quiere usar para ordenar, en el mismo orden en el que quiere
aplicar las operaciones de ordenación.
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

Por ejemplo, suponga que quiere ordenar los resultados por


el valor del campo Empresa en orden descendente y, en caso
de que haya registros con el mismo valor para Empresa,
quiere ordenarlos además por el valor indicado en el campo
Dirección de correo electrónico en orden ascendente. La
cláusula ORDER BY podría ser similar a la siguiente:

ORDER BY Company DESC, [E-mail Address]

Nota: De forma predeterminada, Access ordena los valores en


orden ascendente (A-Z, de menor a mayor). Use la palabra
clave DESC para ordenar los valores en orden descendente
en su lugar.

Para obtener más información sobre la cláusula ORDER BY,


vea el tema sobre la cláusula ORDER BY.

Principio de página

Trabajar con datos resumidos:


GROUP BY y HAVING
A veces quiere trabajar con datos resumidos, como las ventas
totales en un mes o los elementos más caros de un
inventario. Para ello, aplique una función de agregado a un
campo en la cláusula SELECT. Por ejemplo, si quiere que la
consulta muestre el recuento de las direcciones de correo
electrónico enumeradas de cada empresa, la cláusula SELECT
podría ser similar a la siguiente:
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

SELECT COUNT([E-mail Address]), Company

Las funciones de agregado que puede usar dependen del


tipo de datos que haya en el campo o la expresión que quiera
usar. Para obtener más información sobre las funciones de
agregado disponibles, consulte el artículo Funciones de
agregado de SQL.
Especificar campos que no se usan en una función de agregado: Cláusula
GROUP BY

Al usar funciones de agregado, normalmente debe crear


también una cláusula GROUP BY. Una cláusula GROUP BY
enumera todos los campos a los que no se aplica una función
de agregado. Si aplica funciones de agregado a todos los
campos en una consulta, no tendrá que crear la cláusula
GROUP BY.

Una cláusula GROUP BY va inmediatamente después de la


cláusula WHERE, o la cláusula FROM si no hay ninguna
cláusula WHERE. Una cláusula GROUP BY enumera los
campos tal y como aparecen en la cláusula SELECT.

Por ejemplo, siguiendo con el ejemplo anterior, si la cláusula


SELECT aplica una función de agregado a [Dirección de
correo electrónico] pero no a Empresa, la cláusula GROUP BY
sería similar a la siguiente:

GROUP BY Company
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

Para obtener más información sobre la cláusula GROUP BY,


vea el tema sobre la cláusula GROUP BY.
Limitar los valores de agregado mediante los criterios de agrupación: cláusula
HAVING

Si quiere usar criterios para limitar los resultados, pero el


campo al que quiere aplicar los criterios se usa en una función
de agregado, no puede usar una cláusula WHERE. En su
lugar, use una cláusula HAVING. Una cláusula HAVING
funciona como una cláusula WHERE, pero se usa para los
datos agregados.

Por ejemplo, suponga que usa la función COUNT (que


devuelve un número de filas) con el primer campo de la
cláusula SELECT:

SELECT COUNT([E-mail Address]), Company

Si quiere que la consulta restrinja los resultados según el valor


de esa función COUNT, no puede usar un criterio para ese
campo en la cláusula WHERE. En su lugar, coloque los
criterios en una cláusula HAVING. Por ejemplo, si solo quiere
que la consulta devuelva filas si hay más de una dirección de
correo electrónico asociada a la empresa, la cláusula HAVING
podría ser similar a la siguiente:

HAVING COUNT([E-mail Address])>1

Nota: Una consulta puede incluir una cláusula WHERE y una


cláusula HAVING: los criterios para los campos que no se
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

usan en una función de agregado se corresponden con la


cláusula WHERE y los criterios de los campos que se usan en
las funciones de agregado se corresponden con la cláusula
HAVING.

Para obtener más información sobre la cláusula HAVING, vea


el tema sobre la cláusula HAVING.

Principio de página

Combinar los resultados de las


consultas: UNION
Si quiere revisar todos los datos obtenidos en conjunto de
varias consultas de selección similares, como un conjunto
combinado, use el operador UNION.

El operador UNION le permite combinar dos instrucciones


SELECT en una. Las instrucciones SELECT que combine deben
tener el mismo número de campos de resultado, en el mismo
orden y con el mismo tipo de datos o con tipos de datos
compatibles. Al ejecutar la consulta, los datos de cada
conjunto de campos correspondientes se combinan en un
único campo de resultado de modo que el resultado de la
consulta tenga el mismo número de campos que cada una de
las instrucciones SELECT.

Nota: Para las consultas de unión, los tipos de datos Texto y


Número son compatibles.
4TO BACHILLERATO EN CC Y LL CON ORIENTACIÓN EN EDUCACIÓN.

Si usa el operador UNION, también puede usar la palabra


clave ALL para especificar si los resultados de la consulta
deben incluir las filas duplicadas, si existe alguna.

La sintaxis básica de SQL para una consulta de unión que


combina dos instrucciones SELECT es la siguiente:
SELECT field_1
FROM table_1
UNION [ALL]
SELECT field_a
FROM table_a
;

Por ejemplo, supongamos que tiene una tabla denominada


Productos y otra tabla denominada Servicios. Ambas tablas
tienen campos que contienen el nombre del producto o
servicio, el precio, la disponibilidad de garantía del servicio o
de garantía del producto, y si el producto o servicio se ofrece
de forma exclusiva. Aunque en la tabla Productos se
almacena información de garantía del producto y en la tabla
Servicios se almacena información de garantía del servicio, la
información básica es la misma (si un producto o servicio
determinado incluye una garantía de calidad). Puede usar una
consulta de unión, como la que se muestra a continuación,
para combinar los cuatro campos de las dos tablas:
SELECT name, price, warranty_available, exclusive_offer
FROM Products
UNION ALL
SELECT name, price, guarantee_available, exclusive_offer
FROM Services
;

S-ar putea să vă placă și