El lenguaje de manipulación de datos (DML), cuando hablamos de Transact SQL, permite manejar los datos contenidos en el esquema, consultando, actualizando y borrando tuplas de las tablas.
La sentencia select sirve para recuperar registros de una o varias tablas, de una o varias bases de datos. Su sintaxis es la siguiente:
Select atributo/s from tabla/s
[where condition1]
[group by atributo/s]
[having condicion1]
[Order by atributo/s]
Los datos entre corchete son opcionales, por lo que pueden ser omitidos. La sintaxis de la sentencia select se compone de:
Si se especifican varias tablas en la cláusula from, los atributos de la claúsula select, deberían ir precedidos de la tabla donde se encuentran, para en el caso de que dicho campo exista en más de una tabla, evitemos el problema de la ambigüedad.
Si deseamos obtener todo los atributos de una tabla, escribiríamos:
Select * from tabla1
La opción where permite seleccionar las filas de una tabla. A continuación de la palabra reservada where, se deberá especificar la condición lógica que se debe evaluar. Para expresar una expresión lógica podemos utilizar cualquiera de los operadores de Transact SQL como:
Si queremos obtener los productos cuyo precio sea mayor que 1000:
Select nombreproducto from productos where precio>1000
La claúsula Group by agrupa filas que tienen el mismo valor para un atributo, en grupos distintos. Con la siguiente sintaxis:
Select apellidos from usuarios group by apellidos
Lo que hace es una select, pero no de las filas de la tabla usuarios, sino de los grupos obtenidos en la claúsula group by. Todas las filas cuyo valor del atributo apellidos sea igual, irán en el mismo grupo.
La claúsula having es similar a la where, salvo que se usa como condición cuando se especifica la cláusula group by. El funcionamiento es similar al where. La única diferencia es que having se aplica a condiciones de grupo. Siguiendo el ejemplo anterior, para obtener las filas cuyo apellidos sea Apellido1, haríamos:
Select apellidos from usuarios group by apellidos having apellidos =’Apellido1’
El order by determina el orden de visualización de las filas obtenidas en la sentencia select. A continuación de esta palabra reservada se especificarán el atributo/atributos por los cuales se ordenará el resultado de la consulta. Ejemplo:
Select nombre, apellidos from usuarios order by apellidos
Funciones escalares son todas aquellas que permiten realizar operaciones de conteo de filas, sumas de atributos, … Dichas funciones se especifican a continuación de la palabra reservada select, y son:
select sum (precio) from libros
select count (*) from usuarios
select avg (precio) form libros
select max (precio) form libros
select min (precio) form libros
Muchas gracias y esperamos sus comentarios!
Profesor de Dirección en Tecnología y Sistemas de Información
Nota: Para aprender de una forma práctica y rápida todo sobre la gestión profesional de un departamento de Sistemas y Tecnología de la Información, les invitamos a que consulten la Especialidad Europea en Gestión de Sistemas y Tecnologías de la Información donde se formará con los mejores profesores de Europa y Latinoamérica y conocerá las mejores prácticas en el área de SITI.
* Los contenidos publicados en este post son responsabilidad exclusiva del Autor.
jesus
comento el día 27 de febrero a las 6:29 pm (#)
buenas tardes realice una consulta de una tabla completa, la tabla es bastante grande es decir posee muchos atributos, los datos de mi tabla los pase a excel y mi problema q los titulos o atributos en el excel no me salen y nose como traerme esos titulos o dondese guardan gracias,