Microsoft SQL Server
This presentation is the property of its rightful owner.
Sponsored Links
1 / 21

Microsoft SQL Server Básico PowerPoint PPT Presentation


  • 107 Views
  • Uploaded on
  • Presentation posted in: General

Microsoft SQL Server Básico. Tablas de la Base de Datos PUBS Authors.- Que contiene la información de los autores de los libros. Titles.- Contiene la información de todos los títulos de los autores. TitleAuthor.- Es la tabla que relaciona los autores con los libros.

Download Presentation

Microsoft SQL Server Básico

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Microsoft sql server b sico

Microsoft SQL Server

Básico


Ejercicios

Tablas de la Base de Datos PUBS

Authors.- Que contiene la información de los autores de los libros.

Titles.- Contiene la información de todos los títulos de los autores.

TitleAuthor.- Es la tabla que relaciona los autores con los libros.

Publishers.- Contiene la información de las editoras de los libros.

Stores.- Los nombres de las librerías.

Employee.- Muestra los empleados de la tienda.

Entre otras……

Ejercicios


Ejercicios1

Desplegar todos y cada uno de los campos de las tablas anteriormente descritas.

Mostrar el nombre y el estado de todas las tiendas.

Listar los apellidos, nombres y fechas de contratación de todos los empleados.

Crear un query que genere la siguiente salida.

Jonhson white vive en Menlo Park,CA

Michael O´Leary vive en San Jose, CA

Dean Straight vive en Oakland, CA

Ejercicios


Ejercicios2

Crear un query que genere la siguiente salida

Nombre

------------------------------------------------------------------

Johnson White

Morjorie Green

Michael O´Leary

……

(23 row(s) affected)

Ejercicios


Curso 2 dia objetivos

Curso 2 Dia Objetivos.

  • Limitar los resultados (WHERE)

  • Usar criterios compuestos (AND/OR)

  • Agrupación de criterios

  • Operadores de comparación

  • Rangos (BETWEEN)

  • Pertenencia de conjuntos (IN)

  • Correspondencia de patrones (LIKE)

  • Valores Nulos (NULL)

  • Negación (NOT)


Introducci n

Introducción

Hasta este momento hemos retornado el contenido completo de una tabla. Esto normalmente no es muy práctico.

Suponiendo que sólo queremos ver a los autores que viven en California.

Podríamos hacer select * from authors y recorrer el resultado obtenido para buscar aquellos donde la columna state = CA.

Aunque esto es fácil de hacer en tablas pequeñas, no es práctico para grandes volúmenes de información.

Así que, para limitar el resultado de acuerdo a nuestras necesidades, usaremos la tercera cláusula mayor de SQL: where.


Clausula where

Clausula WHERE

La cláusula where le indica a la base de datos cuáles renglones extraer y consta de la palabra WHERE seguida de una condición de búsqueda.díia

Para extraer sólo aquellos autores que viven en CA, podríamos usar la siguiente instrucción:

select au_lname, au_fname, state from authors where state = 'CA‘

au_lname au_fnamestate

White Johnson CA

Green MarjorieCA

Carson Cheryl CA

O'Leary MichaelCA

...

(15 row(s) affected)

Esto limita nuestro resultado a sólo los autores en CA.


Criterio compuesto

Criterio Compuesto

Aún así, la lista de autores podría ser muy larga y podríamos estar buscando sólo aquellos autores que tengan el apellido Green, para obtenerlos:

select au_lname, au_fname, state

from authors

where state = 'CA' and au_lname = 'Green‘

au_lname au_fname state

----------------------------------------------------------------------------------------

Green Marjorie CA

(1 row(s) affected)

Se debe tener cuidado con la ortografía ya que SQL Server puede configurarse para ser sensible a las mayúsculas. La base de datos es insensible a las mayúsculas pero esto no aplica necesariamente a los valores de los datos.

Green no es lo mismo que GREEN.


Criterio compuesto1

Criterio Compuesto

  • Por lo tanto, ¿cuál es la diferencia entre usar un AND y un OR?

  • El AND es exclusivo

    • Esto significa que, los renglones deben cumplir con las dos condiciones para ser seleccionados.

  • El OR es inclusivo

    • Esto significa que, para que un renglón sea seleccionado, debe cumplir sólo uno de los criterios.

  • Ahora vamos a complicar esto un poco más.

  • Queremos seleccionar todos los autores que viven en KS con apellido Smith y también a todos los autores de CA.


Criterio compuesto2

Criterio Compuesto

Sabemos cómo obtener la primera parte:

select au_lname, au_fname, state from authors

where state = 'KS' and au_lname = 'Smith‘

También cómo obtener la segunda parte:

select au_lname, au_fname, state from authors

where state = 'CA'

Sólo necesitamos ponerlo junto:

select au_lname, au_fname, state from authors

where state = 'KS' and au_lname = 'Smith' or state = 'CA'


Criterio compuesto3

Criterio Compuesto

au_lnameau_fnamestate

-----------------------------------------------------------------

SmithGeorgeCA

WhiteJohnsonCA

GreenMarjorieCA

CarsonCherylCA

O'LearyMichaelCA

StraightDeanCA

SmithMeanderKS

BennetAbrahamCA

...

(17 row(s) affected)

Aunque esta instrucción SQL retorna los datos que esperamos, no es muy clara.

Cuando usamos criterios compuestos en una cláusula where, debemos siempre agrupar los criterios para asegurarnos de obtener el resultado deseado.


Agrupaci n de criterios

Agrupación de Criterios

Para agrupar se usan paréntesis.

La instrucción SQL correcta es la siguiente:

select *

from authors

where (state = 'KS' and au_lname = 'Smith')

or state = 'CA'


Condiciones de b squeda

Las condiciones básicas de búsqueda (predicados) que ofrece SQL son:

Comparación. Operadores relacionales (=, <>, <, >, <=, >=)

Rango (BETWEEN)

Pertenencia a conjunto (IN)

Correspondencia de patrón (LIKE)

Valor nulo (IS NULL)

Condiciones de Búsqueda


Comparaciones

Además de usar el operador =, podemos usar cualquier otro operador de comparación: >, <, <=, >=.

Supongamos que queremos retornar todos los libros con un precio mayor que $10.00

select title_id, price

from titles

where price > 10

También podríamos escribir:

select title_id, price

from titles

where price > $10.00

title_idprice

-------------------------------------

BU103219.99

BU111111.95

BU783219.99

MC222219.99

PC103522.95

PC888820.00

...

(12 row(s) affected)

Comparaciones


Comparaciones1

Una ventaja de los operadores de comparación es que no sólo aplican a datos de tipo numérico.

También pueden usarse sobre datos de tipo carácter.

Para seleccionar a todos los autores que viven en estados que estén después de MA podríamos usar lo siguiente:

select au_lname, state

from authors

where state > 'MA‘

au_lnamestate

--------------------------------------------------

GreeneTN

Blotchet-HallsOR

del CastilloMI

PanteleyMD

RingerUT

RingerUT

(6 row(s) affected)

...

(12 row(s) affected)

Comparaciones


Comparaciones between

Ahora queremos seleccionar todos los libros que tienen un precio mayor o igual a $10, pero también menor o igual a $20.

Podríamos escribir lo siguiente:

select title_id, price

from titles

where price >= 10

and price <= 20

Pero existe una forma más simple.

SQL nos brinda el operador between:

select title_id, price

from titles

where price between 10

and 20

Comparaciones (BETWEEN)


Pertenencia a conjunto in

Suponiendo que queremos seleccionar a todos los autores que viven en CA, MI, KS y UT.

Podríamos escribir lo siguiente:

select au_lname, state

from authors

where state = 'CA'

or state = 'MI'

or state = 'KS'

or state = 'UT'

Cuando las listas son largas, esto es muy tedioso y toma mucho tiempo escribirlo.

Afortunadamente, SQL nos proporciona algo mucho mejor.

Pertenencia a Conjunto (IN)


Pertenencia a conjunto in1

En vez de usar múltiples ORs, podemos usar un operador IN:

select au_lname, state

from authors

where state in ('CA','KS','MI','UT')

Esto retornará la misma lista:

au_lnamestate

---------------------------------------- -----

Smith CA

White CA

...

McBaddenCA

RingerUT

RingerUT

(20 row(s) affected)

Pertenencia a Conjunto (IN)


Correspondencia a patrones like

Algunas veces no sabemos exactamente lo que estamos buscando.

O buscamos un grupo de datos que coinciden con cierto patrón.

En este caso podemos usar el operador LIKE y comodines con la cláusula where.

SQL tiene dos caracteres comodines:

El símbolo de porcentaje (%) que se refiere a cualquier cadena de caracteres desde cero a N caracteres.

El guión bajo (_) que se refiere a un sólo carácter.

Correspondencia a Patrones (LIKE)


Correspondencia a patrones like1

Supongamos que queremos seleccionar a todos los autores cuya primera letra de sus nombres sea una M:

select au_fname, au_lname

from authors

where au_fname like 'M%‘

au_fnameau_lname

-------------------- ----------------------------------------

MarjorieGreen

MichaelO'Leary

MeanderSmith

MorningstarGreene

MichelDeFrance

(5 row(s) affected)

Si queremos seleccionar todos los autores cuyo nombre sea Carl.

Se debe tener cuidado ya que Carl podría ser escrito Carl o Karl.

Correspondencia a Patrones (LIKE)


Correspondencia a patrones like2

Podríamos realizar la siguiente consulta:

select au_fname, au_lname

from authors

where au_lname like 'Sm_th%‘

au_fnameau_lname

-------------------- ----------------------------------------

MeanderSmith

JimSmithe

PattiSmythe

(3 row(s) affected)

Correspondencia a Patrones (LIKE)


  • Login