Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.
Oracle/PLSQL: instrucción SELECCIONAR
Este tutorial de Oracle describe cómo usar Oracle declaración de selección Viene con gramática, ejemplos y ejercicios.
describir
La instrucción Oracle SELECT se usa para recuperar registros de una o más tablas en una base de datos Oracle.
sintaxis
La sintaxis de una instrucción SELECT en Oracle/PLSQL es:
SELECT expressions FROM tables [WHERE conditions];
parámetro o parámetro
Expresión La columna o cálculo que desea recuperar. Utilice * si desea seleccionar todas las columnas. tabla La tabla de la que desea recuperar registros. Debe aparecer al menos una tabla en la cláusula FROM. La condición WHERE es opcional. Para seleccionar las condiciones que debe cumplir un registro. Si no se proporcionan condiciones, se seleccionarán todos los registros.
Ejemplo: seleccionar todos los campos de una tabla
Veamos cómo seleccionar todos los campos de una tabla usando una consulta Oracle SELECT.
SELECT * FROM homes WHERE bathrooms >= 2 ORDER BY home_type ASC;
En este ejemplo de instrucción Oracle SELECT, usamos * para indicar que queremos seleccionar todos los campos de la tabla de inicio con una cantidad de baños mayor o igual a 2. El conjunto de resultados se ordena en orden ascendente por home_type.
Ejemplo: seleccione un solo campo de una tabla
También puede usar la declaración SELECT de Oracle para seleccionar un solo campo de una tabla en lugar de todos los campos de la tabla.
Por ejemplo:
SELECT home_id, home_type, bathrooms FROM homes WHERE home_id < 500 AND home_type="two-storey" ORDER BY home_type ASC, bathrooms DESC;
Este ejemplo de Oracle SELECT solo devolverá los campos home_id, home_type y bathroom de la tabla de inicio con un home_id inferior a 500 y un home_type de “dos niveles”. Los resultados se ordenan por tipo_de_casa de forma ascendente y luego por baño de forma descendente.
Ejemplo: seleccionar campos de varias tablas
También puede utilizar la sentencia SELECT de Oracle para recuperar campos de varias tablas a través de uniones.
SELECT homes.home_id, customers.customer_name FROM customers INNER JOIN homes ON customers.customer_id = homes.customer_id ORDER BY home_id;
Este ejemplo de Oracle SELECT une las dos tablas, brindándonos un conjunto de resultados que muestra los campos home_id y customer_name, donde el valor de customer_id coincide en las tablas de clientes y de inicio. Los resultados se ordenan por home_id en orden ascendente.
Ejercicio 1:
De acuerdo con la siguiente tabla de contactos, seleccione de la tabla de contactos todos los campos cuyo apellido sea ‘Smith’, contact_id sea mayor o igual a 1000 y contact_id sea menor o igual a 2000 (no es necesario ordenar):
CREATE TABLE contacts ( contact_id number(10) not null, last_name varchar2(50) not null, first_name varchar2(50) not null, address varchar2(50), city varchar2(50), state varchar2(2), zip_code varchar2(10), CONSTRAINT contacts_pk PRIMARY KEY (contact_id) );
Solución al Ejercicio #1:
La siguiente instrucción Oracle SELECT seleccionará estos registros de la tabla de empleados:
SELECT * FROM contacts WHERE last_name="Smith" AND contact_id >= 1000 AND contact_id <= 2000;
O puede escribir su solución usando la cláusula BETWEEN de esta manera:
SELECT * FROM contacts WHERE last_name="Smith" AND contact_id BETWEEN 1000 AND 2000;