Utilizamos cookies propias y de terceros. [Más información sobre las cookies].
Política de cookies
Proyecto AjpdSoft

· Inicio
· Buscar
· Contactar
· Cookies
· Descargas
· Foros
· Historia
· Nosotros
· Temas
· Top 10
· Trucos
· Tutoriales
· Wiki

SQL: Manual SQL con ejemplos de sentencias SQL Oracle
Bases de Datos


Manual que explica el uso de las sentencias SQL más habituales (SELECT, INSET, UPDATE, ...) con ejemplos de SQL de Oracle.

MINIMANUAL SQL

SENTENCIA DESCRIPCIÓN EJEMPLO
INSERT INTO nombretabla (campo1, campo2, ...) VALUES (campo1, campo2, ...)
Inserta un registro en una tabla
INSERT INTO recibidos (id, descripcion) VALUES ('1', 'Registro de prueba)

DELETE FROM nombretabla WHERE condición

Elimina los registros de la tabla que cumplan la condición especificada (si no se especifica condición se eliminarán todos los registros de la tabla)
DELETE FROM recibidos WHERE id='1'
UPDATE nombretabla SET campo1 = valor1, campo2 = valor2, ...WHERE condición
Actualiza los registros que cumplan la condición especificada con los nuevos valores (si no se especifica condición se actualizarán todos los registros de la tabla)
UPDATE recibidos SET id = '2', descripcion = 'Descripción actualizada' WHERE id='1'
UPDATE nombre_tabla
SET campo1 =
(SELECT nt2.campo1
FROM nombre_tabla2 nt2
WHERE nombre_tabla2.codigonombretabla = nombre_tabla.codigo)
Update más avanzado, actualiza el campo campo1 de todos los registros de la nombre_tabla, con el valor del campo1 de la tabla nombre_tabla2 que cumplen la condición especificada en el WHERE UPDATE supplier
SET supplier_name =
(SELECT customer.name
FROM customers
WHERE customers.customer_id = supplier.supplier_id)
SELECT campo1, campo2, ... FROM nombretabla WHERE condición Consulta que muestra los campos especificados de los registros que cumplan la condición especificada (si no se especifica condición mostrará todos los registros) SELECT descripcion FROM recibidos WHERE UPPER(descripcion) LIKE '%ACTUALI%'

CREATE TABLE nombretabla (

campo1 tipodatos1,
campo2 tipodatos2,
...
)

Crea una tabla con los campos especificados

CREATE TABLE recibidos (

id VARCHAR(2) NOT NULL,

descripcion VARCHAR(100)

)

ALTER TABLE tabla_prueba
ADD
(
campo_nuevo TIPO_DATOS,
campo_nuevo2 TIPO_DATOS
)
Añade campos (columnas) nuevos a una tabla existente ALTER TABLE tabla_prueba
ADD
(
campo_nuevo varchar2(9),
campo_nuevo2 varchar2(200)
)

Sólo para Oracle

SENTENCIA DESCRIPCIÓN EJEMPLO

CREATE USER "NOMBRE_USUARIO" PROFILE "DEFAULT"
IDENTIFIED BY "CONTRASEÑA_USUARIO" DEFAULT TABLESPACE "TABLESPACE_DEFECTO"
ACCOUNT UNLOCK;
GRANT "CONNECT" TO "NOMBRE_USUARIO"

Sentencia SQL para crear un usuario en Oracle, creará el usuario "nombre_usuario", con la contraseña "contraseña_usuario", le asignará el tablespace "tablespace_defecto", le asignará el permiso "connect" CREATE USER "usuarioprueba" PROFILE "DEFAULT"
IDENTIFIED BY "contraseña" DEFAULT TABLESPACE "USERS"
ACCOUNT UNLOCK;
GRANT "CONNECT" TO "usuarioprueba"

Según el motor de base de datos utilizado los símbolos separadores de cadenas, fechas, ... pueden variar.

Para las condiciones que se colocan en el WHERE existen los siguientes operadores:

OPERADOR

DESCRIPCIÓN

> Mayor que
< Menor que
>= Mayor o igual que
<= Menor o igual que
<> Distinto
= Igual
And y
Or o
Not no
Like Selecciona los registros cuyo valor de campo se asemeje, no teniendo en cuenta mayúsculas y minúsculas.
In De un conjunto de valores para un campo para los cuales la condición de selección es válida
Not in De un conjunto de valores para un campo para los cuales la condición de selección es no válida
Is null Selecciona los registros que tengan el campo especificado a nulo
Is not null Selecciona los registros que tengan el campo especificado distinto de nulo
Between Selecciona los registros comprendidos en el intervalo especificado
|| Concatenar cadenas de caracteres (válido para Oracle)

COMODÍN

DESCRIPCIÓN

* Sustituye a todos los campos
% Sustituye a cualquier cosa o nada dentro de una cadena
_ Sustituye un solo carácter dentro de una cadena

Ejemplos de consultas SQL (utilizando como motor de base de datos Oracle):

SENTENCIA SQL

DESCRIPCIÓN

SELECT last_name, job_id, salary AS Salario
FROM employees
Muestra todos los registros de la tabla "employees", mostrará los campos especificados y el campo "salary" lo renombra (con un alias) a "Salario "
SELECT *
FROM employees
Muestra todos los registros y todos los campos de la tabla "employees"
SELECT last_name, salary * 12 AS "Salario Anual"
FROM employees
Muestra el campo "last_name" y el campo "Salario Anual" (que es el resultado de multiplicar el campo "salary" por 12) de la tabla employees
SELECT first_name || ', ' || last_name "Nombre empleado"
FROM employees
Concatena los campos "first_name" y "last_name" y los muestra en un solo campo llamado "Nombre empleado", también añade una "," entre los campos
SELECT last_name
FROM employees
WHERE employee_id > 176
Muestra el campo "last_name" de la tabla "employees" cuyo "employee_id" es mayor que 176
SELECT last_name, salary
FROM employees
WHERE salary NOT BETWEEN 5000 AND 12000
Muestra los campos "last_name" y "salary" de aquellos empleados cuyo salario no esté entre 5000 y 12000
SELECT last_name
FROM employees
WHERE department_id IN (20, 50)
ORDER BY last_name
Muestra el campo "last_name" de aquellos registros de la tabla "employees" cuyo "department_id" sea 20 ó 50
SELECT employee_id
FROM employees
WHERE salary > (
SELECT AVG (salary)
FROM employees)
Muestra los empleados cuyo salario sea superior a la media
SELECT last_name, job_id
FROM employees
WHERE department_id IN (
SELECT department_id
FROM departments
WHERE UPPER(department_name) LIKE '%K%')
Muestra los empleados que pertenezcan a un departamento que contenga la letra "K" en el nombre



Nota: Actualizado por AjpdSoft el 17-10-2006.
Anuncios


Enviado el Miércoles, 20 julio a las 15:41:10 por ajpdsoft
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A