16 noviembre 2006

SQL: El tremento SELECT, parte 1

El lenguaje SQL es interesante e importante de aprender, ya que si lo conoces, puedes dominar el universo (universo de los manejadores de bases de datos).

SQL (pronunciado SICUAL) es un lenguaje creado en los 70's por IBM para comunicarse con su sistema manejador de bases de datos. De hecho SQL es el acrónimo de Structured Query Language (lenguaje estructurado de consultas). ¿Por qué de consultas? Es la operación más frecuente que haces con un DBMS (otro acrónimo: DataBase Management System).

Si quieres más información acerca del SQL, revisa este artículo en Wikipedia, o consulta este libro.

Como la consulta es la operación más frecuente, vamos a comenzar con la instrucción SELECT, el rey de las consultas.

Como es una instrucción muy compleja (tiene muchas opciones para hacer un chorro de cosas), voy a comenzar de los más sencillo e ir avanzando poco a poco para ir viendo más y más y más opciones hasta llegar a un dominio chipocludo del arte oscuro de las consultas en SQL.

La sintáxis básica es:

SELECT lista de campos separados por coma ó *
FROM tabla

Para ver un ejemplo, supongamos que tengo una tabla llamada Productos con estos campos y datos:


Ahora vamos a usar una instrucción SQL que muestre el contenido del campo Descrip (que contiene las descripciones de los productos) y la cantidad que tienen en el inventario. El comando SQL sería esta:

SELECT Descrip,Cantidad
FROM Productos

*NOTA: Por claridad y fines didácticos, escribo los comandos en mayúsculas y divido la instrucción en diferentes líneas, sin embargo a SQL no le impora si va en una sola línea ni que las instrucciones estén en mayúscula o minúscula.

El resultado de esta operación sería esta:


Puedo consultar todos los campos que quiera, siempre y cuendo separe con comas sus nombres. Pero si quieres consultar todos los campos y te da mucha flojera escribir una listota de campos, puedes poner un asterisco en lugar de la lista y la consulta te devuelve los valores de todos los campos. Por ejemplo, si quiero consultar todos los campos de la tabla Productos, puedo escribir la siguiente instrucción:

SELECT *
FROM Productos

¡Y listo!

Esta es la sintáxis más sencilla del SELECT. En otras entradas (que haré más adelante) iré explicando los diferentes opciones que puede usar la sentencia SELECT.

2 comentarios:

Anónimo dijo...

No se dond colocar mi duda pero bueno ahi te va: quiero sacar d una tabla los campos con mas de 5 letras repetidas por ejm si tngo "aaaaalberto" que ese campo se muestre, espero puedan ayudarme.
Por favor cualquier novedad avisarme a mensajef4666@hotmail.com

Tony Valderrama dijo...

No se me ocurre como hacerle con una sola sentencia SQL. Se pueden usar comodines en la condición LIKE. Los asteriscos "*" (para access) o signos de porciento "%" (SQL Server) representan un conjunto de caracteres y los signos de interrogación "?" representan un solo caracter.

Dentro de un programa puedes ejecutar diferentes consultas SQL en un ciclo que vaya desde "aaaaa" hasta "zzzzz" y busque elementos que comiencen con esas letras.

Ojalá esto te sirva.

El Tony y sus ondas...

Related Posts Plugin for WordPress, Blogger...