COMANDOS SQL.

Slides:



Advertisements
Presentaciones similares
SQL.
Advertisements

SQL CON EJEMPLOS SARI TEMA 4.
SQL Y BASES DE DATOS A TRAVÉS DE LA WEB
Introducción Lenguaje de manipulación de datos (Data Manipulation Language) Permite a los usuarios llevar a cabo las tareas de consulta o manipulación.
integridad referencial
Se necesita un PA que muestre la información de todos los clientes registrados de la siguiente forma: Nombre1 Nombre2, Apellido1 Apellido2 bajo el título.
Marzo de 2010Dos Ideas - La visión de Sistemas desde el Desarrollo Introducción a PL/SQL Conceptos básicos.
Fernando Velasco
Unidad IV Objetivo de la Unidad:
SQL G r u p o
OPERACIONES DE RECUPERACIÓN. WHERE ciudad =‘Las Palmas’; de los suministradores Obtener el código y la situación de Las Palmas SELECT sn, situacion FROM.
PL/SQL Francisco Moreno Universidad Nacional.
SESIÓN 2. Completados por el tipo de objeto sobre el que actúan y el objeto concreto: CREATE DATABASE mibase ; Permite crear una base de datos llamada.
MySQL M.C. Pedro Bello López.
SQL.
SQL Lenguaje de consulta estructurado
Universidad del Cauca – FIET – Departamento de Sistemas CAPITULO 5 Agregando Datos Usando Funciones de Grupo.
SQL el Structured Query Language no es mas que un lenguaje estándar de comunicación con bases de datos.
MSC. RUTH VEGA BASES DE DATOS SQL SERVER
Subconsultas Avanzadas
Bases de datos en la Web n Las bases de datos permiten almacenar de una forma estructurada y eficiente toda la información de un sitio web n Ventajas –Proporcionar.
Componentes sintácticos
UNITA - IBARRA TRIGGERS
Universidad del Cauca – FIET – Departamento de Sistemas CAPITULO 6 Subconsultas.
Dr. Mario Rossainz López Aplicaciones WEB Primavera 2015.
CONCEPTOS BASICOS SQL SERVER SEBASTIAN MARTINEZ GARCIA.
D. M.L. (Lenguaje de Manipulación de Datos)
COMANDOS DML DML son las siglas de Data Manipulation Language y se refiere a los comandos que permiten a un usuario manipular los datos en un repositorio,
SQL: DDL Francisco Moreno & Carlos Mario Zapata. SQL:DDL DDL: Lenguaje de Definición de Datos Permite crear objetos en la Base de Datos Tipos de Objetos:
Bases de datos con MYSQL
SQL (Structured Query Language / Lenguaje de consulta estructurado)‏
IBD CLASE 15. SQL Lenguaje de Consultas Estruturado (SQL) ◦Lenguaje de trabajo estándard para modelo relacional ◦Componentes ◦DDL: Data Definition Language.
Programación en Visual Basic Lección #8: SQL Por Antonio F. Huertas.
CONSULTAS SENCILLAS A LA BASE DE DATOS
Autora: Francisca Montañez Muñoz
Consultas SQL (Base de Datos)
INSTRUCCIONES Elaboración de la Presentación:
1 Módulo 4 Sentencias SQL. 2 Objetivos Generales Implementar una base de datos Definir los campos, registros, tablas que se encuentran relacionadas en.
LENGUAJE SQL.
Bases de Datos Sql.
Structured Query Language (Lenguaje Estructurado de Consultas)
LENGUAJE ESTRUCTURADO DE CONSULTAS
Lenguaje Estructurado de Consulta
SQL Sigla del nombre “Structured Query Language”.
COMANDOS DML DML son las siglas de Data Manipulation Language y se refiere a los comandos que permiten a un usuario manipular los datos en un repositorio,
INSTRUCCIONES Elaboración de la Presentación:
Prof. De Bases de Datos: Lcdo. Luis Peña. El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query.
SQL Lenguaje Estructurado de Consulta MATERIA: diseñar sistemas de información ALUMNO: sarmiento flores Liliana Guadalupe GRUPO: 4° “A” TURNO: matutino.
Tema 11 Bases de Datos y el Lenguaje SQL
 La sentencia SELECT recupera todas las columnas o un subconjunto de ellas de una tabla. Esto afecta a todas las filas de la tabla, a menos que especifiquemos.
Consultas SQL. SQL SQL es un lenguaje de consulta estructurado (Structured Query Languague). Se utiliza para: Eliminar Modificar Consultar La base de.
SQL (Structured Query Language) Lenguaje orientado a bases de datos y sobre todo, al manejo de consultas; el objetivo principal de SQL es la realización.
Comandos de SQL Prog. Orientada a Eventos. Inserción de datos (INSERT) INSERT….VALUES INSERT INTO Tabla1 (Columna1, Columna2…) VALUES (‘ValorAlfa’, ValorNum…);
MSSQL SERVER CURSO BÁSICO 1. CONCEPTOS BASICOS DE SQL. DESCRIPCIÓN DEL CURSO. Sesión 3: Índices Uso, Creación, Tipos, Eliminación LENGUAJE DE CONSULTAS.
MSSQL SERVER CURSO BÁSICO 1. DESCRIPCIÓN DEL CURSO. Sesión 4: Sentencia Insert,Transacciones,Insert general, Insert Select * From, Sentencia Update,Update.
(Lenguaje de consulta estructurado)
SQL es un estándar internacional para trabajar con bases de datos, que consta de dos partes: una parte para manipular datos y una parte para definir tipos.
SQL es el lenguaje de comunicación entre el programa cliente y programa servidor; Oracle es un programa servidor, en el que está la base de datos propiamente.
Bases de Datos SQL.
UNIVERSIDAD LATINA IV. CONSULTAS AVANZADAS CON BASES DE DATOS. E.I. L.E. Prof. Ramón Castro Liceaga.
SQL STRUCTURED QUERY LANGUAGE
AA Gerardo Morgade Donato AA Isnel Leyva Herbella.
Unidad 6. Tema 4. Lenguaje de consultas SQL
INTEGRACION DE LAS TECNOLOGIAS DE LA INFORMACION Y COMUNICACION Implementación de base de datos (Lenguaje de manipulación de datos) Ing. Linda Masias Morales.
Structure Query Languaje SQL. Introducción a SQL El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos normalizado, utilizado por.
DLM Transact SQL Sesión II Recuperación de información.
Querys a bases de datos con MS ACCESS. DEFINAMOS LOS TERMINOS: DML=Lenguaje de manipulación de datos Las sentencias DML permiten generar consultas para.
DML Transact SQL Sesión VI Trabajando con subconsultas.
Crear una tabla (create table - sp_tables - sp_columns - drop table) Para ver las tablas existentes creadas por los usuarios en una base de datos usamos.
Selección Condicionada de Filas Uso de la cláusula WHERE La cláusula WHERE restringe las columnas que retorna una consulta según la condición que se imponga.
Transcripción de la presentación:

COMANDOS SQL

Bases de datos relacionales Base de datos “Finanzas” Servidor de base de datos Base de datos “Demo” Base de datos “Test”

En la figura anterior se observa que el database server con acceso a las tres bases de datos: demo, finanzas y test. Con el comando psql finanzas se puede conectar a la base de datos finanzas Para ver una lista de las bases de datos, teclear psql -l

Crear una tabla Vamos a crear una tabla llamada empleado en alguna base de datos, por ejemplo test. test=> CREATE TABLE empleado ( test(> nombre VARCHAR(20), test(> apellido VARCHAR(20), test(> sueldo FLOAT, test(> sexo CHAR(1), test(> edad INTEGER, test(> transaccion TIMESTAMP DEFAULT CURRENT_TIMESTAMP, test(> ingreso DATE);

Insertar datos test=> INSERT INTO empleado (nombre, apellido, sueldo, sexo, edad, ingreso) VALUES test-> ('Javier', 'Ramírez', 34452.89, 'M', 23, '4-06-08'); Observamos que se ponen las columnas en las que se va a insertar, no se puso la columna transaccion ya que esta se inserta por default con la hora y la fecha actuales.

Seleccionar Obtener toda la tabla empleado test=> SELECT * FROM empleado; Obtener algunas columnas y todos los renglones de la tabla empleado test=> SELECT apellido, sueldo, ingreso FROM empleado;

Seleccionar renglones específicos En SELECT se usa la cláusula WHERE, donde se especifican los renglones que se quieren obtener. Por ejemplo el nombre y apellido de los empleados cuya edad sea mayor ó igual a 25 años. test=> SELECT nombre, apellido FROM empleado test-> WHERE edad >=25; O bien, los que su apellido sea Ramírez test-> WHERE apellido = 'Ramírez'; Como se trata de columnas tipo caracter, se usan apóstrofes y debe escribirse exactamente como esté en la base de datos.

Removiendo datos con DELETE Con DELETE podemos mover uno ó bien todos los renglones de una tabla, por ejemplo DELETE FROM empleado; eliminaría todos los datos de la tabla empleado. Si utilizamos la cláusula WHERE se eliminan los renglones que cumplan la condición, por ejemplo: test=> DELETE FROM empleado test-> WHERE ingreso = '2008-12-24’;

Modificando datos con UPDATE En una base de datos además de insertar y eliminar datos hay que actualizar. Por ejemplo, la edad del empleado Javier Pérez es de 35 años. test=> UPDATE empleado SET edad = 35 WHERE apellido = 'Pérez'; La cláusula WHERE controla los renglones en los que se llevará a cabo la modificación. Si no se pone esta cláusula, se cambiarían la edad de todos los empleados a 35.

Ordenando datos con ORDER BY Cuando hacemos un SELECT, los renglones se despliegan con un orden no determinado. Si se quieren obtener los renglones en un orden específico, es necesario aumentar la cláusula ORDER BY al final del SELECT. test=> SELECT * FROM empleado ORDER BY apellido; Para invertir el orden se usa DESC test=> SELECT * FROM empleado ORDER BY edad DESC; Se puede ordenar por distintas columnas, si en la primera hay dos valores iguales, se usa la siguiente para ver cual va primero.

Destruyendo tablas con DROP Cuando queremos eliminar completamente la tabla escribimos: DROP TABLE empleado; Si queremos eliminar todos los datos de una tabla pero conservar su estructura utilizamos (no ejecutarla): DELETE FROM empleado;

Caracteres especiales Si el empleado que vamos a insertar tiene un apóstrofe en el nombre, por ejemplo: test=> INSERT INTO empleado (nombre, apellido, sueldo, sexo, edad, ingreso) VALUES test-> ('Jack', 'O'Donnell', 34452.89, 'M', 23, '4-06-08'); Me marca un error: test'> Para resolverlo: 'O''Donnell',se ponen dos apóstrofes ó 'O\'Donnell' se pone una diagonal invertida

Etiquetado de columnas y Comentarios El nombre que aparece en la salida de un SELECT hasta arriba es la etiqueta de la columna que corresponde al nombre del atributo. Se puede cambiar usando la palabra clave AS, por ejempo: test=> SELECT nombre AS Razón_Social FROM cuenta; test=> SELECT 1 + 3 AS total; Con dos guiones -- indica que hasta el final del renglón es un comentario Con /* al principio y con */ al final indica que todo lo que está contenido es un comentario test=> /*Esto es un comentario test*> y no ejecuta nada*/;

Uso de AND/OR AND y OR se usan para conectar condiciones simples. Insertaremos más datos en empleado: test=> INSERT INTO empleado (nombre, apellido, sueldo, sexo, edad, ingreso) VALUES ('María', 'Pérez', 2317.89, 'F', 23, '30-07-2005'); VALUES ('Alejandro', 'Padilla', 4317.86, 'M', 24, '12-08-2006'); VALUES ('Raquel', 'Carmona', 5817.86, 'F', 24, '15-02-2006'); VALUES ('Armando', 'Pinillos', 7317.86, 'M', 24, '13-08-2005'); test-> VALUES ('María', 'Romero', 11317.89, 'F', 23, '30-08-2004');

AND se usa para combinar las dos comparaciones que conecta, ejemplo: test=> SELECT * FROM empleado WHERE nombre='María' AND apellido='Pérez'; OR verifica que se cumpla una de las dos comparaciones al menos, ejemplo: test=> SELECT * FROM empleado WHERE sexo = 'F' OR edad = 24; Si se combinan ANDs y ORs en un mismo query es mejor agrupar los ANDs y los ORs usando paréntesis. Los ANDs se evalúan primero. Por ejemplo, si se quieren los de apellido Pérez y que sean hombres ó mujeres si no usamos paréntesis el resultado es incorrecto, ya que se evalúa el AND primero: test=> SELECT * FROM empleado WHERE apellido='Pérez' AND sexo='M' OR sexo='F'; Me da los de apellido Pérez Y son de sexo M pero también todos los de sexo F´, ya que primero se ejecuta el AND y después el OR. Lo correcto es: test=> SELECT * FROM empleado WHERE apellido='Pérez' AND (sexo='M' OR sexo='F'); Este me da los que son de apellido Pérez y que son de sexo M ó F.

Between y Like Si queremos aquéllos empleados que están entre 24 y 30 años de edad: test=> SELECT * FROM empleado WHERE edad >= 24 AND edad <= 30; test=> SELECT * FROM empleado WHERE edad BETWEEN 24 AND 30; Para obtener los datos de los empleados cuyo apellido inicia con la letra R: test=> SELECT * FROM empleado WHERE apellido LIKE 'R%'; Obtener los que ingresaron en 2008: test=> SELECT * FROM empleado WHERE ingreso LIKE '2008%';

Comparaciones con LIKE Empieza con una D LIKE ‘D%’ Contiene una D LIKE ‘%D%’ Tiene D en 2da posición LIKE ‘_D%’ Empieza con D y tiene una e LIKE ‘D%e%’ No empieza con D NOT LIKE ‘D%’

Agregación A veces es necesario resumir cierta información. En lugar de ver renglones, solo se necesita saber cuántos son. Para esto se usan las siguientes palabras clave: COUNT(*) cuenta renglones SUM(nombre_col) total MAX(nombre_col) máximo MIN(nombre_col) mínimo AVG(nombre_col) promedio

Ejemplos Contar número de renglones test=> SELECT COUNT(*) FROM empleado; Obtener la suma de los sueldos test=> SELECT SUM(sueldo) FROM empleado; Obtener el sueldo máximo test=> SELECT MAX(sueldo) FROM empleado; Obtener la edad mínima test=> SELECT MIN(edad) FROM empleado; Obtener el sueldo promedio test=> SELECT AVG(sueldo) FROM empleado;

GROUP BY En los ejemplos anteriores nos regresó un renglón como resultado y sólo se usó una columna con el agregado. Usando los agregados con GROUP BY se tendrá la aplicación del agregado en una columna, en los renglones agrupados por otra columna. SELECT COUNT(*) FROM empleado, regresa el número de renglones en la tabla. Si queremos contar cuántos son sexo M y cuantos F: test=> SELECT sexo, COUNT(*) FROM empleado GROUP BY sexo; Si por sexo se quiere saber datos del salario y de la edad: test=> SELECT sexo,MIN(edad),MAX(edad),AVG(sueldo) FROM empleado GROUP BY sexo ORDER BY 4 DESC;

HAVING Permite probar condiciones en los valores agregados. A menudo se usa con GROUP BY. Con HAVING se pueden incluir o excluir grupos basados en el valor de agregación para ese grupo. En el ejemplo de contar los empleados por sexo, podemos limitar para que despliegue solo aquéllos que sean más de 3, el query que cuenta empleados por sexo es: test=> SELECT sexo, COUNT(*) FROM empleado GROUP BY sexo; Sólo los que sean más de 3 empleados de ese sexo: test=> SELECT sexo, COUNT(*) FROM empleado GROUP BY sexo HAVING COUNT(*)>3;