Sentencia SELECT básica

El formato básico y la sintaxis de la sentencia SELECT constan de varias cláusulas obligatorias y opcionales.

Puede escribir sentencias SQL en una línea o en muchas líneas. Para sentencias SQL en programas precompilados, las reglas para la continuación de líneas son las mismas que las del lenguaje principal (el lenguaje en el que se escribe el programa). Una sentencia SELECT también puede ser utilizada por un cursor en un programa. Finalmente, se puede preparar una sentencia SELECT en una aplicación dinámica.

Notas:
  1. Las sentencias SQL descritas en esta sección se pueden ejecutar en tablas y vistas SQL y en archivos físicos y lógicos de base de datos.
  2. Las series de caracteres especificadas en una sentencia SQL (como las utilizadas con las cláusulas WHERE o VALUES) son sensibles a mayúsculas y minúsculas; es decir, los caracteres en mayúsculas deben especificarse en mayúsculas y en minúsculas.
    WHERE ADMRDEPT='a00'     (does not return a result)
     
    WHERE ADMRDEPT='A00'     (returns a valid department number)

    Es posible que las comparaciones no sean sensibles a las mayúsculas y minúsculas si se utiliza una secuencia de ordenación de ponderación compartida donde los caracteres en mayúsculas y minúsculas se tratan como los mismos caracteres.

Una sentencia SELECT puede incluir lo siguiente:

  1. El nombre de cada columna que desea incluir en el resultado.
  2. El nombre de la tabla o vista que contiene los datos.
  3. Una condición de búsqueda para identificar las filas que contienen la información que desea.
  4. El nombre de cada columna utilizada para agrupar los datos.
  5. Condición de búsqueda que identifica de forma exclusiva un grupo que contiene la información que desea.
  6. El orden de los resultados.
  7. Un desplazamiento en el conjunto de resultados para habilitar la omisión de un número de filas.
  8. El número de filas a devolver.

Una sentencia SELECT tiene el siguiente aspecto:

   SELECT column names
     FROM table or view name
     WHERE search condition
     GROUP BY column names
     HAVING search condition
     ORDER BY column-name
     OFFSET number of rows
     FETCH FIRST n ROWS ONLY

Deben especificarse las cláusulas SELECT y FROM. Las otras cláusulas son opcionales.

Con la cláusula SELECT, especifique el nombre de cada columna que desee recuperar. Por ejemplo:

   SELECT EMPNO, LASTNAME, WORKDEPT
   

Puede especificar que sólo se recupere una columna, o hasta 8000 columnas. El valor de cada columna que nombre se recupera en el orden especificado en la cláusula SELECT.

Si desea recuperar todas las columnas que no tienen el atributo oculto (en el mismo orden en que aparecen en la definición de la tabla), utilice un asterisco (*) en lugar de nombrar las columnas:

   SELECT *
   

La cláusula FROM especifica la tabla en la que desea seleccionar datos de. Puede seleccionar columnas de más de una tabla. Al emitir una SELECT, debe especificar una cláusula FROM. Emita la sentencia siguiente:

SELECT *
       FROM EMPLOYEE;

El resultado son todas las columnas y filas de la tabla EMPLOYEE.

La lista SELECT también puede contener expresiones, incluidas constantes, registros especiales y selecciones completas escalares. Se puede utilizar una cláusula AS para asignar un nombre a la columna resultante. Por ejemplo, emita la sentencia siguiente:

SELECT LASTNAME, SALARY * .05 AS RAISE
       FROM EMPLOYEE
       WHERE EMPNO = '200140';

El resultado de esta sentencia es el siguiente.

Tabla 1. Resultados de la consulta
LASTNAME GENERAR
NATZ 1421