Fernando Velasco

Slides:



Advertisements
Presentaciones similares
SQL Sigla del nombre “Structured Query Language”.
Advertisements

VISTAS (VIEWS) DEFINICIÓN Y OBJETIVO DE LAS VISTAS.
LENGUAJE ESTRUCTURADO DE CONSULTA “SQL”
BASE DE DATOS OBJETO RELACIONAL
Base de Datos Orientada a Objetos (OODBMS)
Fernando Velasco
Fernando Velasco
Por: Ronald Toscano Pretelt
SQL G r u p o
Unidad 3 Lenguaje de manipulación de datos(DML).
Julio Pacheco SQL SERVER 2005 XML APRENDIENDO CON EJEMPLOS.
EL LENGUAJE ESTÁNDAR SQL
PL/SQL Francisco Moreno Universidad Nacional.
Características Objeto Relacionales en Oracle Francisco Moreno Universidad Nacional.
Sistema de gestión de las bases de datos (SGBD).
Unidad 3 Lenguaje SQL Contenidos Que es SQL ? Estructura de SQL
Lenguaje Estructurado de Consultas (Structured Query Language – SQL)
Fernando Velasco
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.
…Tablas DDL.
SQL Lenguaje de consulta estructurado
PL/SQL Francisco Moreno Universidad Nacional. Introducción al PL/SQL ¿Por qué PL/SQL? A pesar de que SQL tiene mecanismos de control condicional (cláusula.
Componentes sintácticos
Integridad Referencial 1. Integridad referencial 2.
Dr. Mario Rossainz López Aplicaciones WEB Primavera 2015.
CONCEPTOS BASICOS SQL SERVER SEBASTIAN MARTINEZ GARCIA.
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:
SQL (Structured Query Language / Lenguaje de consulta estructurado)‏
ESCUELA TECNOLÓGICA INSTITUTO TÉCNICO CENTRAL Ing. Johanna Vargas Esp. Gerencia de proyectos.
Programación en Visual Basic Lección #8: SQL Por Antonio F. Huertas.
STRUCTURED QUERY LANGUAGE
INSTRUCCIONES Elaboración de la Presentación:
Introducción a Bases de Datos en Microsoft Access Programación de Computadoras 2 Sección: P.
LENGUAJE SQL.
Structured Query Language (Lenguaje Estructurado de Consultas)
SQL: DDL Francisco Moreno. SQL: DDL DDL: Lenguaje de Definición de Datos Permite crear objetos en la BD Tipos de objetos: - Tablas: corresponden a las.
LENGUAJE ESTRUCTURADO DE CONSULTAS
SQL Sigla del nombre “Structured Query Language”.
LENGUAJE SQL (LENGUAJE ESTRUCTURADO DE CONSULTA) BASES DE DATOS Ing Sonia Godoy H.
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:
Base de Datos I. SQL es el lenguaje estándar para trabaja con base de datos relacionales. MySQL, el sistema de gestión de bases de datos SQL Open Source.
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.
Diseña y administra base de datos avanzadas
Consultas SQL. SQL SQL es un lenguaje de consulta estructurado (Structured Query Languague). Se utiliza para: Eliminar Modificar Consultar La base de.
Base de datos Francisco Castro. Creación de una tabla drop table TABLA cascade constraints; /*==============================================================*/
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…);
Qué es SQL? Sentencias básicas
MSSQL SERVER CURSO BÁSICO 1. DESCRIPCIÓN DEL CURSO. Sesión 4: Sentencia Insert,Transacciones,Insert general, Insert Select * From, Sentencia Update,Update.
Comandos DDL Los comandos DDL son las siglas de Data Definition Language, y se corresponde con el conjunto de órdenes que permiten definir las estructuras.
SQL El lenguaje de consulta estructurado o SQL (por sus siglas en inglés structured query language) es un lenguaje declarativo de acceso a bases de datos.
(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.
Modificando la estructura de tablas
SQL Lenguaje Estructurado de Consultas. Structured Query Lenguaje (SQL). Lenguaje de acceso a bases de datos. Proyecto de Investigación de IBM. La mayoria.
Bases de Datos SQL.
UNIVERSIDAD LATINA IV. CONSULTAS AVANZADAS CON BASES DE DATOS. E.I. L.E. Prof. Ramón Castro Liceaga.
Unidad 6. Tema 4. Lenguaje de consultas SQL
Departamento de Lenguajes y Sistemas Informáticos escuela técnica superior de ingeniería informática Diseño de Bases de Datos Tema 4: Integridad.
Departamento de Lenguajes y Sistemas Informáticos escuela técnica superior de ingeniería informática Diseño de Bases de Datos Tema 4: Integridad.
SQL: DDL.
Base de Datos SQL - Introductorio - DDL. DEFINICIÓN SQL Volver a los Objetivos.
6 Triggers ORACLE - II Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega.
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.
SQL Lenguaje de Consulta estructurado (structured query language) Es un lenguaje declarativo de acceso a bases de datos relacionales que permite especificar.
Lenguaje SQL Contenidos Que es SQL ? Estructura de SQL
Transcripción de la presentación:

Fernando Velasco

DíasContenido 22 MarzoPresentación - Grupos 29 Marzo – 5 Abril – 12 AbrilMER – ejercicios 19 Abril – 26 AbrilMR – ejercicios 3 MayoPHP – Tipos de datos – scripts 10 Mayo – 17 Mayo*DDL – Query Select 24 Mayo – 31 MayoDML – Clausulas de condición 7 Junio – 14 JunioDML – Consultas anidadas 21 JunioPHP en conjunto con PL/PGSQL 23 Junio**Interrogación Proyecto Planificación específica.

Creación de la BD. Creación de Tablas en la BD. Consulta las Tablas de la BD.

SQL DDL. Lenguaje de definición de datos (DDL): Una Tabla se compone de Columnas y almacena datos en las celdas de sus Filas. Para definir una tabla se usará CREATE TABLE, sentencia dentro de la cual debemos declarar las columnas que contendrá nuestra tabla, debemos declarar los nombres de variables e identificar el tipo de sus datos.

DDL - Crear Tabla. Una tabla es una estructura de datos que organiza los DATOS en filas y columnas. Fila: Registro. Columna: Campo (atributo). La sintaxis básica de la creación de tablas en sql es: CREATE TABLE nombre_de_la_tabla ( atributo_1 integer, atributo_2 character varying(20), atributo_3 integer NOT NULL, PRIMARY KEY (atributo_3) );

DDL - Modificar Tabla. Dsp de creada nuestra tabla existe la opción de modificarla: Añadir, Borrar Columnas. Añadir, Borrar Constraints. Modificar el tipo de sus atributos. Ejemplo: ALTER TABLE nombre_de_la_tabla ADD atributo_4 varchar, /*Añade una nueva columna a la tabla*/ DROP COLUMN atributo_2, /*Elimina la columna ATRIBUTO_2*/ ADD CONSTRAINT restriccion_1 CHECK(atributo_3>=0), /*Añade restricción de positividad al atributo_2*/ ALTER COLUMN atributo_1 TYPE varchar; /*Modifica el tipo de sus atributos. Atributo_1 pasa de ser ENTERO a ser STRING*/

SQL DML. Lenguaje de manipulación de datos (DML): Para que nuestra tabla sea utilizada como tal, debemos poder Insertar, Actualizar, y Borrar datos de ésta, debemos manipular los datos. Para esto utilizaremos las sentencias SQL; INSERT, UPDATE, y DELETE respectivamente.

ComandoObjetivoEjemplo usando una tabla; CLIENTE(nombre, rut, pass) WHEREAgrega una Condición[…]WHERE( X=string AND (A=12345 OR A=54321)) SELECTRecupera campos de una tabla. SELECT * FROM cliente WHERE( rut= AND pass=12345) INSERTInserta una fila en una tabla. INSERT INTO cliente VALUES(Claudia, , mipass123) DELETEElimina filas de una tabla.DELETE FROM cliente WHERE rut= UPDATEModifica el contenido de las columnas de una tabla. UPDATE cliente SET pass=newpass321 WHERE rut=

DML. Ingresaremos una nueva Fila, un nuevo registro. La sintaxis básica de la INSERCIÓN de FILAS en tablas con sql es: /*Inserta valores para todas las columnas*/ INSERT INTO nombre_de_la_tabla VALUES(NULL,este-es-un-string,123) Ó /*Inserta valores para algunas columnas*/ INSERT INTO nombre_de_la_tabla(atributo_2, atributo_3) VALUES(este-es-un-string,123)

DML. Modificaremos una columna, el valor de un atributo. La sintaxis básica de la ACTUALIZACIÓN de DATOS en tablas con sql es: UPDATE nombre_de_la_tabla SET atributo_4=newvalorX, atributo_1=newvalorY WHERE (atributo_3=123) /*Actualiza el valor del atributo_4 a NEWVALORX, además actualiza el valor del atributo_1 a NEWVALORY, SÓLO DE LA FILA EN DONDE EL ATRIBUTO_3 SEA IGUAL a 123.*/

DML. Borraremos una Fila, eliminaremos un registro. La sintaxis básica de la ELIMINACIÓN de FILAS en una tablas con sql es: DELETE FROM nombre_de_la_tabla WHERE ventas_mensuales < /*Elimina los registos de la tabla NOMBRE_DE_LA_TABLA donde los valores de la columna VENTAS_MENSUALES sean menosres a 10mil*/ DELETE FROM nombre_de_la_tabla --Elimina TODOS los registro de la tabla NOMBRE_DE_LA_TABLA*/

DML. Seleccionaremos registros. La sintaxis básica de la SELECCIÓN de FILAS o DATOS en una tablas con sql es: SELECT * FROM nombre_de_la_tabla WHERE nombre=Francisca /*Selecciona TODOS LOS CAMPOS (columnas) de la tabla NOMBRE_DE_LA_TABLA en donde el valor de la columna NOMBRE sea igual a Francisca.*/ SELECT rut FROM nombre_de_la_tabla /*Selecciona los valores de la columna RUT de la tabla consultada. Es decir, seleccionará solo una columna de la tabla.*/

DML - Operadores. OPERADORES ARITMÉTICOS OperadorNombreEjemplo + Sumaa + b - Restaa – b * Multiplicacióna * b / Divisióna / b % Móduloa % b

DML - Operadores. Operadores de Comparación OperadorNombreEjemplo = Igualdada=b <> Desigualdada<>b > Mayor quea>b < Menor quea<b >= Mayor o igual quea>=b <= Menor o igual quea<=b !< No menor quea!<b !> No mayor quea!>b != No igual quea!=b

DML - Operadores. OPERADORES LÓGICOS OperadorNombreEjemplo NOT NegaciónNOT True AND Y lógicoTrue AND False OR O lógicoTrue OR False

Ejemplos. -- /*Las siguientes sentencias "select " no retornan los mismos registros: */ select * from libros_table where precio is null; select * from libros_table where precio=0; -- /*Igualmente para campos de tipo cadena, las siguientes sentencias "select" no retornan los mismos registros:*/ select * from libros where editorial_table is null; select * from libros where editorial_table=''; --

Ejemplos. -- select * from libro where autor<>'Borges'; -- select titulo from libro where precio<=30; -- --Select con operadores aritméticos select precio*cantidad from libros; -- /*Multiples operadores lógicos*/ SELECT * FROM artist_table WHERE ((nombre=Francisca OR nombre=Fran) AND apellido=Valenzuela); --

EjemplosPreguntas? Minutos para Reflexión..

Continuamos.. En PostgreSQL existen múltiples funciones, y condiciones adicionales a las ya revisadas hasta el momento. Estas funciones y condiciones son muy útiles al momento de, por ejemplo: Trabajar con nombres simplificados, en lugar de los nombres reales de las columnas de las tablas Seleccionar valores dentro de un intervalo definido. Seleccionar valores de una tabla y que muestre sólo los 10 primeros valores ordenados de forma creciente. Saber el promedio, el mayor/menor valor, la suma de todos los valores de una columna de una tabla. Entre muchos otros.

Funciones y Condiciones adicionales.

ALIAS Supongamos tenemos la tabla: CREATE TABLE personaje ( apodo varchar(30) PRIMARY KEY, primer_nombre varchar(30), primer_apellido varchar(30), segundo_apellido varchar(30) ); Para tener claridad de los datos con los que trabajamos es necesario declarar las columnas de la tabla con nombres representativos, PERO al momento de trabajarlos se nos puede volver incómodo y/o tedioso trabajar con estos nombres. Para lo cual usaremos la sentencia ALIAS de la sgte. manera: SELECT primer_nombre AS nom FROM personaje; Esto es de mucha ayuda y bastante utilizado en los procedimientos almacenados y al momento de realizar funciones con PostgreSQL.

Manejo de Cadenas. PostgreSQL tiene algunas funciones para trabajar con cadenas de caracteres. Solo revisaremos las más básicas e importantes: -- /*char_length(string): Retorna la longitud del texto. Ejemplo:*/ select char_length('Hola'); -- retorna un /*upper(string): Retorna el texto convertido a mayúsculas. Ejemplo:*/ select upper('Hola'); -- retorna 'HOLA'. -- /*lower(string): Retorna el texto convertido a minúsculas. Ejemplo:*/ select lower('Hola'); -- retorna 'hola'.

Funciones Matemáticas. Funciones Matemáticas FunciónDescripciónEjemplo abs(x) retorna el valor absoluto del argumento "x". SELECT abs(-7) sqrt(x) retorna la raíz cuadrada del argumento "x" SELECT cbrt(9) power(x,y) retorna el valor de "x" elevado a la "y" potencia SELECT power(2,3) round(x) retorna un número redondeado al valor más próximo SELECT round(10.4) Pi() SELECT pi() Random() Devuelve un valor entre 1 y 0, SIN INCLUIRLOS SELECT random()

FECHA ACTUAL. current_date: retorna la fecha actual. Ejemplo: select current_date; --Retorna por ejemplo

Ordenar Asc/Desc los registros. Podemos ordenar el resultado de un "select" para que los registros se muestren ordenados por algún campo, para ello usamos la cláusula "order by". Por ejemplo: select * from producto order by nombre; /*Muestra todos los datos de los productos ordenados alfabetica y ASCENDENTEMENTE (de menor a mayor) por el campo NOMBRE*/ -- Por defecto se ordena ASC, pero vale la pena especificarlo. select titulo,autor,precio from libro order by 3 DESC; /*Muestra el TITULO + el AUTOR + el PRECIO de la tabla LIBRO, ordenados DESCENDENTEMENTE por PRECIO («order by 3» corresponde al precio)*/

Between. Podemos seleccionar ciertos datos que cumplan con la condición de pertenecer a un intervalo definido. Por ejemplo: -- Esta sentencia tiene que cumplir con 2 condiciones.. select * from producto where (precio>0 and precio<1000); -- Mientras que el uso del between se considera como una sola condición, lo que hace más rápida su respuesta.. Select * from producto where precio between 0 and 1000; Este operador simplifica la consulta, y se puede emplear con tipos de datos numéricos y tipos de datos fecha y hora. Si agregamos el operador "not" antes de "between" el resultado se invierte, es decir, se recuperan los registros que están fuera del intervalo especificado. --Por ejemplo: Select from producto where precio not between 0 and 1000;

IN. Se utiliza "in" para averiguar si el valor de un campo está incluido en una lista de valores especificada. De igual forma se usará not in para seleccionar el valor de un campo que esté fuera de un conjunto definido Por ejemplo: -- Select * from libro where clasificacion NOT IN (+17,+18,+21); -- Select * from libro where anho_publicacion IN (2000, 2001, 2002, 2003, 2004, 2005);

LIKE – NOT LIKE.I Se utiliza «like» para comparar cadenas de caracteres PARECIDAS a un patrón, es decir, que comiencen con una determinada letra, que tengan dentro de sus caracteres algún patrón definido, entre otros. Existen: % comodín que coincide con una cadena de caracteres. _ comodín que coincide con un único caractér. [] comodín que coincide con un rango de caracteres. [^ ] comodín que coincide con cualquier carácter distinto del patrón definido. Por ejemplo: -- Selecciono los datos de Libros donde el titulo del libro empiece con M. Select * from libro where titulo like M%; -- /*Selecciono los datos de los Libros donde en el titulo aparezca una letra M.*/ Select * from libro where titulo like %M%;

LIKE – NOT LIKE.II Por ejemplo: /*No recuerdo si el titulo del libro es BerlitS o BerlitZ o BerlitX. Entonces usamos el comodín _*/ Select * from libro where titulo like Berlit_; -- /*Selecciono los datos de los Clientes donde en el nombre empiece con una letra A, B, C, D, F.*/ Select * from cliente where nombre like [A-F]%; /*Así mismo, puedo seleccionar los nombres que NO empiecen con esas letras*/ Select * from cliente where nombre like [^A-F]%; -- /*Selecciono los datos de los autos con patente de carabineros.*/ Select * from auto where (patente like Z* ____ OR patente like RP* ____ );

Funciones de Agrupamiento Funciones Estadísticas FunciónDescripciónEjemplo count(x) Cuenta la cantidad de registros de la columna X. SELECT count(*) FROM cliente sum(x) Suma los valores de la columna X (numérico) SELECT sum(venta) FROM ventas_empleado min(x) retorna el valor más pequeño de la columna X. SELECT min(nota) FROM detalle_evaluacion max(x) retorna el valor más grande de la columna X. SELECT max(nota) FROM detalle_evaluacion Avg(x) Calcula el promedio de la columna X (numérico). SELECT avg(nota) from detalle_evaluacion

Group By. Usamos GROUP BY cuando queremos seleccionar registros que estén agrupados por un valor definido, en la mayoría de los casos se ocupa junto con COUNT(*) para contar la cantidad de registros de una determinada ocurrencia. Por ejemplo: SELECT nombre, count(*) from cliente group by nombre; /*Devuelve el nombre, y la cantidad de ocurrencias de ese nombre en la tabla cliente.*/

Distinct. Con la cláusula "distinct" se especifica que los registros con ciertos datos duplicados sean obviadas en el resultado. Por ejemplo, queremos conocer todos los autores de los cuales tenemos libros, si utilizamos esta sentencia: select autor from libro; --Aparecen repetidos. /*Para obtener la lista de autores sin repetición usamos:*/ select distinct autor from libro; --También podemos tipear: select autor from libro group by autor; -- --Para contar los distintos usamos: select count(distinct autor) from libro;

Limit. Las cláusulas "limit" y "offset" se usan para restringir los registros que se retornan en una consulta "select". La cláusula limit recibe un argumento numérico positivo que indica el número máximo de registros a retornar; la cláusula offset indica el número del primer registro a retornar. El número de registro inicial es 0. Ejemplo: /*Selecciona los datos de 3 libros, empezando del primer registro*/ select * from libro limit 3 offset 0; -- /*Selecciona los datos de 3 libros, empezando del décimo registro*/ select * from libro limit 3 offset 11; -- Es conveniente utilizar la cláusula order by cuando utilizamos limit y offset, por ejemplo: SELECT * FROM libro ORDER BY precio DESC LIMIT 10;

Conocimiento Participación Motivación Hagamos en conjunto una clase agradable y participativa.