Sei sulla pagina 1di 7

INTRUCCIONES SQL

PRESENTADO POR:

CARLOS OMAR MARQUEZ


COD: 1090463121

BASE DE DATOS I

PRESENTADO A:
JORGE ELIECER AVILA GARZON

UNIVERSIDAD SANTIAGO DE CALI


FACULTAD DE INGENIERIA
DEPARTAMENTO DE INGENIERIA DE SISTEMAS Y COMPUTACION
SANTIAGO DE CALI
2014

SQL (STRUCTURED QUERY LANGUAGE)


El lenguaje de consulta estructurado o SQL (por sus siglas en ingls Structured
Query Language) es un lenguaje declarativo de acceso a bases de
datos relacionales que permite especificar diversos tipos de operaciones en ellas.
Una de sus caractersticas es el manejo del lgebra y el clculo relacional que
permiten
efectuar consultas con
el
fin
de
recuperar
de
forma
sencilla informacin de inters de bases de datos, as como hacer cambios en
ellas.
LENGUAJE DE DEFINICIN DE DATOS (DDL)
El lenguaje de definicin de datos (en ingls Data Definition Language, o DDL), es
el que se encarga de la modificacin de la estructura de los objetos de la base de
datos. Incluye rdenes para modificar, borrar o definir las tablas en las que se
almacenan los datos de la base de datos. Existen cuatro operaciones bsicas:
CREATE, ALTER, DROP y TRUNCATE.
CREATE | CREA
Este comando permite crear objetos de datos, como nuevas bases de datos,
tablas, vistas y procedimientos almacenados.
Ejemplo (crear una tabla)
CREATE TABLE 'CUSTOMERS';
ALTER | MODIFICAR
Este comando permite modificar la estructura de una tabla o objeto. Se pueden
agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar
ndices a una tabla, modificar un trigger, etc.
Ejemplo (agregar columna a una tabla)
ALTER TABLE 'ALUMNOS' ADD EDAD INT UNSIGNED;
DROP | ELIMINAR
Este comando elimina un objeto de la base de datos. Puede ser una
tabla, vista, ndice, trigger, funcin, procedimiento o cualquier objeto que el motor
de la base de datos soporte. Se puede combinar con la sentencia ALTER.
Ejemplo
DROP TABLE 'ALUMNOS';.
TRUNCATE | BORRAR TABLA

Este comando trunca todo el contenido de una tabla. La ventaja sobre el comando
DROP, es que si se quiere borrar todo el contenido de la tabla, es mucho ms
rpido, especialmente si la tabla es muy grande. La desventaja es que
TRUNCATE slo sirve cuando se quiere eliminar absolutamente todos los
registros, ya que no se permite la clusula WHERE. Si bien, en un principio, esta
sentencia parecera ser DML (Lenguaje de Manipulacin de Datos), es en realidad
una DDL, ya que internamente, el comando TRUNCATE borra la tabla y la vuelve
a crear y no ejecuta ninguna transaccin.
Ejemplo
TRUNCATE TABLE 'NOMBRE_TABLA';
LENGUAJE DE MANIPULACIN DE DATOS DML(DATA MANIPULATION
LANGUAGE)

Un lenguaje de manipulacin de datos (Data Manipulation Language, o DML en


ingls) es un lenguaje proporcionado por el sistema de gestin de base de datos
que permite a los usuarios llevar a cabo las tareas de consulta o manipulacin de
los datos, organizados por el modelo de datos adecuado.
El lenguaje de manipulacin de datos ms popular hoy da es SQL, usado para
recuperar y manipular datos en una base de datos relacional.
SELECT

Palabra clave que indica que la sentencia de SQL que queremos


ejecutar es de seleccin.

ALL

Indica que queremos seleccionar todos los valores.Es el valor por


defecto y no suele especificarse casi nunca.

DISTINCT Indica que queremos seleccionar slo los valores distintos.

FROM

Indica la tabla (o tablas) desde la que queremos recuperar los datos.


En el caso de que exista ms de una tabla se denomina a la consulta
"consulta combinada" o "join". En las consultas combinadas es
necesario aplicar una condicin de combinacin a travs de una
clusula WHERE.

WHERE

Especifica una condicin que debe cumplirse para que los datos sean
devueltos por la consulta. Admite los operadores lgicos AND y OR.

GROUP
BY

Especifica la agrupacin que se da a los datos. Se usa siempre en


combinacin con funciones agregadas.

HAVING

Especifica una condicin que debe cumplirse para que los datos sean
devueltos por la consulta. Su funcionamiento es similar al
de WHERE pero aplicado al conjunto de resultados devueltos por la
consulta. Debe aplicarse siempre junto a GROUP BY y la condicin
debe estar referida a los campos contenidos en ella.

ORDER
BY

Presenta el resultado ordenado por las columnas indicadas. El orden


puede expresarse con ASC (orden ascendente) y DESC (orden
descendente). El valor predeterminado es ASC.

SENTENCIA

DESCRIPCIN EJEMPLO

INSERT INTO nombretabla


Inserta un
(campo1, campo2, ...) VALUES registro en una
(campo1, campo2, ...)
tabla

INSERT INTO recibidos (id,


descripcion) VALUES ('1', 'Registro de
prueba)

DELETE FROM nombretabla


WHERE condicin

Elimina los
registros de la
tabla que
cumplan la
condicin
DELETE FROM recibidos WHERE
especificada (si
id='1'
no se especifica
condicin se
eliminarn todos
los registros de
la tabla)

UPDATE nombretabla SET


campo1 = valor1, campo2 =
valor2, ...WHERE condicin

Actualiza los
registros que
cumplan la
condicin
especificada con
los nuevos
UPDATE recibidos SET id = '2',
valores (si no se descripcion = 'Descripcin actualizada'
especifica
WHERE id='1'
condicin se
actualizarn
todos los
registros de la
tabla)

Update ms
avanzado,
actualiza el
campo campo1
UPDATE nombre_tabla
de todos los
SET campo1 =
registros de la
(SELECT nt2.campo1
nombre_tabla,
FROM nombre_tabla2 nt2
con el valor del
WHERE
campo1 de la
nombre_tabla2.codigonombret tabla
abla = nombre_tabla.codigo)
nombre_tabla2
que cumplen la
condicin
especificada en
el WHERE

UPDATE supplier
SET supplier_name =
(SELECT customer.name
FROM customers
WHERE customers.customer_id =
supplier.supplier_id)

Consulta que
muestra los
campos
especificados de
los registros que
SELECT campo1, campo2, ...
SELECT descripcion FROM recibidos
cumplan la
FROM nombretabla WHERE
WHERE UPPER(descripcion) LIKE
condicin
condicin
'%ACTUALI%'
especificada (si
no se especifica
condicin
mostrar todos
los registros)
CREATE TABLE recibidos (

CREATE TABLE nombretabla (


campo1 tipodatos1,
campo2 tipodatos2,
...
)

ALTER TABLE tabla_prueba


ADD
(
campo_nuevo TIPO_DATOS,
campo_nuevo2 TIPO_DATOS
)

Crea una tabla id VARCHAR(2) NOT NULL,


con los campos
especificados
descripcion VARCHAR(100)
)

Aade campos
(columnas)
nuevos a una
tabla existente

ALTER TABLE tabla_prueba


ADD
(
campo_nuevo varchar2(9),
campo_nuevo2 varchar2(200)
)

Segn el motor de base de datos utilizado los smbolos separadores de cadenas,


fechas, ... pueden variar. Para las condiciones que se colocan en el WHERE
existen los siguientes operadores:

OPERADO
DESCRIPCIN
R
>

Mayor que

<

Menor que

>=

Mayor o igual que

<=

Menor o igual que

<>

Distinto

Igual

And

Or

Not

no

Like

Selecciona los registros cuyo valor de campo se asemeje, no teniendo en


cuenta maysculas y minsculas.

In

De un conjunto de valores para un campo para los cuales la condicin de


seleccin es vlida

Not in

De un conjunto de valores para un campo para los cuales la condicin de


seleccin es no vlida

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 (vlido para Oracle)

COMODN DESCRIPCIN
*

Sustituye a todos los campos

Sustituye a cualquier cosa o nada dentro de una cadena

Sustituye un solo carcter dentro de una cadena

Ejemplos de consultas SQL


SENTENCIA SQL

DESCRIPCIN

SELECT last_name,
Muestra todos los registros de la tabla "employees", mostrar
job_id, salary AS Salario los campos especificados y el campo "salary" lo renombra (con
FROM employees
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

Muestra el campo "last_name" y el campo "Salario Anual" (que


es el resultado de multiplicar el campo "salary" por 12) de la

Anual"
FROM employees

tabla employees

SELECT first_name || ', '


Concatena los campos "first_name" y "last_name" y los
|| last_name "Nombre
muestra en un solo campo llamado "Nombre empleado",
empleado"
tambin aade una "," entre los campos
FROM employees
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_na
me) LIKE '%K%')

Muestra los empleados que pertenezcan a un departamento


que contenga la letra "K" en el nombre

Potrebbero piacerti anche