TRANSACT SQL - Consultas de selección

Creado por David Miralpeix, Modificado el Fri, 16 Feb 2024 a las 12:24 PM por David Miralpeix

Consultas de Selección

Las consultas de selección devuelven información de las bases de datos, en forma de conjunto de registros o filas

Palabras claves utilizadas en una consulta de selección:

  • SELECT: para búsquedas de determinados registros de datos

 

Cláusulas:

  • FROM: para especificar la tabla o tablas de las cuales se van a extraer o modificar los datos.
  • AS: para asignar un determinado nombre a la columna o tabla a mostrar. Se puede omitir.
  • WHERE: para especificar las condiciones que deben cumplir los datos
  • ORDER BY: para especificar la ordenación que deben seguir los datos
  • GROUP BY, HAVING: para especificar una determinada agrupación de los datos y establecer condiciones sobre ellos.

 

Operadores:

  • AND, OR, NOT: son operadores lógicos que encadenan condiciones de búsqueda y devuelven ‘Verdadero’ o ‘Falso’. AND devuelve verdadero si todas las condiciones son verdad. OR devuelve verdadero si al menos una de las condiciones es verdad. NOT devuelve lo contrario de la condición
  • <, >, <>, <=, >=, = son operadores de comparación de datos. < menor, > mayor, <> distinto, <= menor o igual, >= mayor o igual, = igual.
  • BETWEEN operador lógico para especificar un rango de valores.
  • LIKE operador lógico para comparar con un modelo de datos.
  • IN operador lógico para determina si un valor dado coincide con algún valor de una subconsulta o lista de datos.
  • DISTINCT: operador para eliminar los valores duplicados en los campos seleccionados

 

Funciones Agregadas que devuelven un único valor

  • AVG: función utilizada para calcular el promedio de los valores de un campo determinado
  • COUNT: función utilizada para devolver el número de registros de la selección
  • SUM: función utilizada para devolver la suma de todos los valores de un campo determinado
  • MAX: función utilizada para devolver el valor más alto de un campo especificado
  • MIN: función utilizada para devolver el valor más bajo de un campo especificado

 

Sintaxis básica:

SELECT * FROM Tabla

devuelve todos la información almacenada en una determinada tabla de la base de datos.

SELECT campo1, campo2,...,campoN FROM Tabla

devuelve los valores de los campos o columnas 1, 2, ..., N de una determina tabla.

SELECT campo1 c1, campo2 c2 ,...,campoN cN FROM Tabla

devuelve los valores de los campos o columnas 1, 2, ..., N de una determina tabla

y renombra las cabeceras de las columnas.

 

Aplicando condiciones de búsqueda:

SELECT * FROM Tabla WHERE campo OPERADOR valor
SELECT * FROM Tabla WHERE campo OPERADOR valor ORDER BY campo

 

Ejemplos:

 

SELECT * FROM Clientes_Datos
SELECT Cliente,Direccion,IdTipo,NumTelefono,RazonSocial FROM Clientes_Datos
SELECT Cliente Nombre, NumTelefono Tlf FROM Clientes_Datos

en estos ejemplos se muestra información de los clientes existentes en la base de datos.

 

SELECT * FROM Clientes_Datos WHERE IdTipo=0

en este ejemplo se muestran los datos de todos los clientes de tipo 0 ó nacional

 

SELECT Numalbaran,IdEmpresa,SerieAlbaran,FechaAlb,IdCliente,Embalaje,IdEmpleado
FROM Albaranes_Cli_Cab WHERE IdEstado=2 ORDER BY IdCliente ASC

en este ejemplo se muestran datos de todos los albaranes facturados (estado 2) ordenados ascendentemente por el identificador del cliente

 

SELECT Numalbaran,IdEmpresa,SerieAlbaran,FechaAlb,IdCliente,Embalaje,IdEmpleado
FROM Albaranes_Cli_Cab WHERE IdEstado=2 AND IdCliente='1145' AND FechaAlb>='20060101'

en este ejemplo se muestran determinados datos de los albaranes facturados al cliente con identificador 1145 a partir del año 2006

 

SELECT * FROM Clientes_Datos_Comerciales WHERE Sector IN ('METAL', 'AUTO')

datos de clientes pertenecientes a los sectores del automóvil o del metal

 

SELECT * FROM Clientes_Datos WHERE Cliente LIKE '%taller%'

Aquí se muestran clientes cuyo nombre contiene la palabra taller. El uso del carácter especial % con el operador like significa que se puede sustituir por cualquier carácter.

 

SELECT COUNT(*) FROM Clientes_Datos

numero de clientes de nuestra base de datos

 

SELECT SUM(Unidades) FROM Contratos_Lineas WHERE IdArticulo='MOTOR HID.' AND IdCliente='1145' AND IdEstado=0

numero de motores hidráulicos alquilados actualmente (idestado=2) al cliente 1145

 

SELECT IdMaquina, SUM(Unidades) AS Cantidad FROM Contratos_Lineas
GROUP BY IdMaquina, IdEstado
HAVING (IdEstado = 0)

en esta consulta se muestran la cantidad de maquinas alquiladas actualmente agrupadas por maquina.

 

SELECT Min(Precio_Euro) FROM Pedidos_Cli_Lineas WHERE IdArticulo=' MOTOR HID'

mínimo precio al que se vendió el motor hidráulico

 

SELECT DISTINCT IdCliente FROM Pedidos_Cli_Cabecera WHERE Fecha BETWEEN '20060101' AND '20060131'

muestra los clientes a los que se le realizaron pedidos en enero del 2006

¿Le ha sido útil este artículo?

¡Qué bien!

Gracias por sus comentarios

¡Sentimos mucho no haber sido de ayuda!

Gracias por sus comentarios

¡Háganos saber cómo podemos mejorar este artículo!

Seleccione al menos una de las razones
Se requiere la verificación del CAPTCHA.

Sus comentarios se han enviado

Agradecemos su esfuerzo e intentaremos corregir el artículo