+ All Categories
Home > Documents > Leccion 01 - SELECT Basico

Leccion 01 - SELECT Basico

Date post: 30-Sep-2015
Category:
Upload: karlyta-flores
View: 219 times
Download: 0 times
Share this document with a friend
Description:
gfdgdfgdfg
19
Diapositiva 1 1 Copyright © Oracle Corporation, 2001. All rights reserved. Escribiendo un comando SELECT Diapositiva 2 1-2 Copyright © Oracle Corporation, 2001. All rights reserved. Lo que podemos hacer con un SELECT Selection Projection Table 1 Table 2 Table 1 Table 1 Join Capacidades de sentencias SQL SELECT Una sentencia SELECT recupera información de la base de datos. Utilización de una sentencia SELECT, usted puede hacer lo siguiente: Proyección: Puede utilizar la capacidad de proyección en SQL para elegir las columnas de una tabla que desea respuesta a la consulta. Usted puede elegir como pocos o tantas columnas de la tabla como necesite. Selección: Puede utilizar la capacidad de selección de SQL para elegir las filas de una tabla que desea devueltos por una consulta. Puede utilizar varios criterios para restringir las filas que se ven.
Transcript
  • Diapositiva 1

    1Copyright Oracle Corporation, 2001. All rights reserved.

    Escribiendo un comando SELECT

    Diapositiva 2

    1-2 Copyright Oracle Corporation, 2001. All rights reserved.

    Lo que podemos hacer con un SELECT

    SelectionProjection

    Table 1 Table 2

    Table 1Table 1

    Join

    Capacidades de sentencias SQL SELECT

    Una sentencia SELECT recupera informacin de la base de datos.

    Utilizacin de una sentencia SELECT, usted puede hacer lo siguiente:

    Proyeccin: Puede utilizar la capacidad de proyeccin en SQL para elegir

    las columnas de una tabla que desea respuesta a la consulta. Usted puede

    elegir como pocos o tantas columnas de la tabla como necesite.

    Seleccin: Puede utilizar la capacidad de seleccin de SQL para elegir

    las filas de una tabla que desea devueltos por una consulta. Puede

    utilizar varios criterios para restringir las filas que se ven.

  • Unin: Puede utilizar la capacidad de unirse en SQL para reunir datos que

    se almacenan en tablas diferentes, creando un vnculo entre ellos. Se

    aprende ms sobre une en una leccin posterior.

    Diapositiva 3

    1-3 Copyright Oracle Corporation, 2001. All rights reserved.

    COMANDO SELECT BASICO

    SELECT *|{[DISTINCT] column|expression [alias],...}

    FROM table;

    SELECT identifica cuales columnas

    FROM identifica cual tabla

    Declaracin Bsica SELECT

    En su forma ms simple, una instruccin SELECT debe incluir lo siguiente:

    Una clusula SELECT, que especifica las columnas que se mostrar

    Una clusula FROM, que especifica la tabla que contiene las columnas

    listadas en la clusula SELECT

    En la sintaxis:

    SELECT es una lista de una o ms columnas

    * = Selecciona todas las columnas

    DISTINCT = suprime los duplicados

    column | expression = selecciona la columna llamada o la expresin

    alias = da columnas seleccionado varios encabezamientos

    FROM tabla especifica la tabla que contiene las columnas

    Nota: A lo largo de este curso, la palabra clave palabras, clusula, y la

    declaracin se utilizan de la siguiente manera:

    Una palabra clave se refiere a un elemento de SQL individual.? Por

    ejemplo, SELECT y FROM son palabras clave.

    Una clusula es una parte de una sentencia SQL.? Por ejemplo, employee_id

    SELECT nombre, apellidos, ... es una clusula.

    Una declaracin es una combinacin de dos o ms clusulas.? Por ejemplo,

    SELECT * FROM empleados es una sentencia SQL.

  • Diapositiva 4

    1-4 Copyright Oracle Corporation, 2001. All rights reserved.

    SELECT *

    FROM departments;

    SELECCIONANDO TODAS LAS

    COLUMNAS

    Seleccin de todas las columnas de todas las filas

    Puede mostrar todas las columnas de datos en una tabla siguiendo la

    palabra clave SELECT con un asterisco (*).

    En el ejemplo de la diapositiva, la tabla departamento contiene cuatro

    columnas: DEPARTMENT_ID, department_name, MANAGER_ID y LOCATION_ID. La

    tabla contiene siete filas, una para cada departamento.

    Tambin puede mostrar todas las columnas de la tabla enumerando todas las

    columnas despus de la palabra clave SELECT. Por ejemplo, la siguiente

    sentencia SQL, como el ejemplo de la diapositiva, muestra todas las

    columnas y todas las filas de la tabla DEPARTAMENTOS:

    SELECCIONAR Department_id, department_name, MANAGER_ID, LOCATION_ID

    De los departamentos;

  • Diapositiva 5

    1-5 Copyright Oracle Corporation, 2001. All rights reserved.

    SELECCIONANDO COLUMNAS

    ESPECIFICAS

    SELECT department_id, location_id

    FROM departments;

    Seleccionar columnas especficas de todas las filas

    Usted puede utilizar la instruccin SELECT para mostrar columnas

    especficas de la tabla especificando los nombres de columna, separados

    por comas. El ejemplo de la diapositiva muestra todos los nmeros de

    departamento y los nmeros de ubicacin de la tabla de departamentos.

    En la clusula SELECT, especifique las columnas que desee, en el orden en

    el que desea que aparezcan en la salida. Por ejemplo, para mostrar la

    ubicacin antes del nmero de departamento que va de izquierda a derecha,

    se utiliza la siguiente declaracin:

    SELECCIONAR LOCATION_ID, department_id

    De los departamentos;

  • Diapositiva 6

    1-6 Copyright Oracle Corporation, 2001. All rights reserved.

    Writing SQL Statements

    El comando SELECT No es sensitivos a mayusculas o minuculas ( podemos escribir SELECT o select y la maquina lo entendera igual ).

    El comando select lo podemos escribir en varias lineas

    Las palabras claves ( ejemplo selec, from ) esa deben escribirse completas sin abreviaturas.

    Un select completo usualmente se puede escribir en varias iineas para que se vea mas ordenado.

    Se pude usar identacion para mejorar la lectura.

    Escribir sentencias SQL

    Usando las siguientes reglas y pautas simples, usted puede construir

    afirmaciones vlidas que sean fciles de leer y fcil de editar:

    o instrucciones SQL no son sensibles a maysculas, salvo que se indique.

    o Sentencias SQL se pueden introducir en una o varias lneas. o Las palabras clave no pueden ser divididos en lneas o abreviados. o Clusulas se colocan generalmente en lneas separadas para

    facilitar la lectura y la facilidad de edicin.

    o Las sangras se deben utilizar para hacer el cdigo ms legible. o Palabras clave normalmente son introducidos en maysculas; todas

    las otras palabras, como nombres de tablas y columnas, se

    introducen en minsculas.

    Ejecutar sentencias SQL

    El uso de iSQL * Plus, haga clic en el botn Ejecutar para ejecutar el

    comando o comandos en la ventana de edicin.

  • Diapositiva 7

    1-7 Copyright Oracle Corporation, 2001. All rights reserved.

    Encabezados de columnas

    predeterminados

    iSQL*Plus: La justificacion de cada encabezado es al centro.

    El desplege de cada encabezado de columna estandar es en mayusculas

    Predeterminados Encabezados de Columnas

    En iSQL * Plus, encabezados de columna se muestran en maysculas y

    centradas.

    SELECT apellidos, hire_date, salario

    De los empleados;

    Puede anular la visualizacin de ttulo de la columna con un alias. Alias

    de columna se tratan ms adelante en esta leccin.

    Diapositiva 8

    1-8 Copyright Oracle Corporation, 2001. All rights reserved.

    Expresiones Aritmeticas

    Se pueden crear expresiones aritmeticas usando los campos numericos y de fechas.

    Los operadores aritmeticos son:

    Operator

    +

    -

    *

    /

    Description

    Add

    Subtract

    Multiply

    Divide

  • Expresiones aritmticas

    Es posible que tenga que modificar la forma en que se muestran los datos,

    realizar clculos, o buscar en escenarios hipotticos. Estos son todos

    los posibles utilizando expresiones aritmticas. Una expresin aritmtica

    puede contener nombres de columna, valores numricos constantes, y los

    operadores aritmticos.

    Operadores aritmticos

    La diapositiva muestra los operadores aritmticos disponibles en SQL.

    Puede usar operadores aritmticos en cualquier clusula de una sentencia

    SQL, excepto en la clusula FROM.

    Diapositiva 9

    1-9 Copyright Oracle Corporation, 2001. All rights reserved.

    Usando los operadores aritmeticos

    SELECT last_name, salary, salary + 300

    FROM employees;

    Uso de operadores aritmticos

    El ejemplo de la diapositiva utiliza el operador de suma para calcular un

    aumento salarial de $ 300 para todos los empleados y muestra una nueva

    columna SALARIO 300 + en la salida.

    Tenga en cuenta que la resultante calculada columna SALARIO + 300 no es

    una nueva columna en la tabla EMPLEADOS; es slo para visualizacin. Por

    defecto, el nombre de una nueva columna proviene del clculo que lo

    gener, en este caso, el salario + 300.

    Nota: El servidor Oracle9i ignora los espacios en blanco antes y despus

    de que el operador aritmtico.

  • Diapositiva 10

    1-10 Copyright Oracle Corporation, 2001. All rights reserved.

    Precedencia de los operadores

    La multiplication y la division son prioritarios a la suma y la resta.

    Las operaciones son realizadas de izquierda a derecha

    Se pude usar parentesis para forzar la prioridad en la operaciones aritmeticas

    * / +_

    Precedencia de Operadores

    Si una expresin aritmtica contiene ms de un operador, la

    multiplicacin y la divisin se evalan primero. Si los operadores dentro

    de una expresin son de misma prioridad, la evaluacin se realiza de

    izquierda a derecha.

    Puede utilizar parntesis para forzar la expresin dentro de parntesis,

    a ser evaluado primero.

    Diapositiva 11

    1-11 Copyright Oracle Corporation, 2001. All rights reserved.

    Precedencia de los operadores

    SELECT last_name, salary, 12*salary+100

    FROM employees;

  • Precedencia de Operadores (continuacin)

    El ejemplo de la diapositiva muestra el apellido, el salario y la

    compensacin anual de los empleados. Se calcula la compensacin anual que

    12 multiplicado por el salario mensual, ms un bono por nica vez de $

    100. Obsrvese que la multiplicacin se realiza antes de la adicin.

    Nota: Utilice parntesis para reforzar el orden estndar de precedencia y

    para mejorar la claridad. Por ejemplo, la expresin en la diapositiva se

    puede escribir como (12 * salario) + 100 sin ningn cambio en el

    resultado.

    Diapositiva 12

    1-12 Copyright Oracle Corporation, 2001. All rights reserved.

    Usuando parentesis

    SELECT last_name, salary, 12*(salary+100)

    FROM employees;

    Uso de parntesis

    Puede anular las reglas de precedencia mediante el uso de parntesis para

    especificar el orden en que se ejecutan los operadores.

    El ejemplo de la diapositiva muestra el apellido, el salario y la

    compensacin anual de los empleados. Se calcula la compensacin anual

    como salario mensual ms un bono mensual de $ 100, multiplicado por 12.

    Debido a los parntesis, adems tiene prioridad sobre la multiplicacin.

  • Diapositiva 13

    1-13 Copyright Oracle Corporation, 2001. All rights reserved.

    Definiendo el valor nulo

    Un nulo es un valor que esta sin asignar, no disponible, desconocido, inaplicable

    Una valo nulo no es un valor cero o un espacio en blanco.

    SELECT last_name, job_id, salary, commission_pct

    FROM employees;

    Valores Nulos

    Si una fila carece el valor de datos para una columna en particular, ese

    valor se dice que es nulo, o para contener un valor nulo.

    Un nulo es un valor que no est disponible, sin asignar, desconocido, o

    inaplicables. Un nulo no es lo mismo que cero o un espacio. El cero es un

    nmero, y un espacio es un personaje.

    Columnas de cualquier tipo de datos pueden contener valores nulos. Sin

    embargo, algunas limitaciones, NOT NULL y PRIMARY KEY, impiden que los

    nulos se utilicen en la columna.

    En la columna de la COMMISSION_PCT en la tabla EMPLEADOS, observe que

    slo un representante de ventas o gerente de ventas puede ganar una

    comisin. Otros empleados no tienen derecho a ganar comisiones. Un nulo

    representa ese hecho.

  • Diapositiva 14

    1-14 Copyright Oracle Corporation, 2001. All rights reserved.

    SELECT last_name, 12*salary*commission_pct

    FROM employees;

    El valor nulo en operaciones aritmeticas

    Las operaciones aritmeticas que contienen valores nulos dan como resultados valores nulos.

    Valores Nulos (continuacin)

    Si cualquier valor de columna en una expresin aritmtica es nulo, el

    resultado es nulo. Por ejemplo, si se intenta realizar la divisin por

    cero, se obtiene un error. Sin embargo, si se divide un nmero por nulo,

    el resultado es un valor nulo o desconocido.

    En el ejemplo de la diapositiva, empleado rey no recibe ningn tipo de

    comisin. Debido a la columna de la COMMISSION_PCT en la expresin

    aritmtica es nulo, el resultado es nulo.

    Para obtener ms informacin, consulte Oracle9i SQL, "Elementos bsicos

    de SQL."

  • Diapositiva 15

    1-15 Copyright Oracle Corporation, 2001. All rights reserved.

    Definiendo alias en las columnas

    Un alias de columna

    Cambia el nombre de un encabezado de columna

    Es til con clculos

    Para usarlo se deja un espacio Inmediatamente despus del nombre de la columna - tambin puede usarse la expresion AS como una palabra clave entre el nombre de la columna y alias

    Requiere comillas dobles si contiene espacios o caracteres especiales o maysculas y minsculas

    columna Alias

    Cuando se muestra el resultado de una consulta, iSQL * Plus normalmente

    utiliza el nombre de la columna seleccionada como el ttulo de la

    columna. Esta partida no puede ser descriptivo y, por tanto, puede ser

    difcil de entender. Puede cambiar un encabezado de columna utilizando un

    alias de columna.

    Especifique el alias despus de la columna en la lista SELECT utilizando

    un espacio como separador. De forma predeterminada, los encabezados de

    alias aparecen en maysculas. Si el alias contiene espacios o caracteres

    especiales (como # o $), o entre maysculas y minsculas, incluya el

    alias entre comillas dobles ("").

  • Diapositiva 16

    1-16 Copyright Oracle Corporation, 2001. All rights reserved.

    Usando el alias de columnas

    SELECT last_name "Name", salary*12 "Annual Salary"

    FROM employees;

    SELECT last_name AS name, commission_pct comm

    FROM employees;

    Los alias de columna (continuacin)

    El primer ejemplo muestra los nombres y los porcentajes de las comisiones

    de todos los empleados. Ntese que la palabra clave AS opcional se ha

    utilizado antes del nombre de alias de columna. El resultado de la

    consulta es el mismo si la palabra clave AS se utiliza o no. Observe

    tambin que la sentencia SQL tiene el alias de columna, el nombre y la

    comunicacin, en minsculas, mientras que el resultado de la consulta

    muestra los encabezados de columna en maysculas. Como se mencion en una

    diapositiva anterior, ttulos de las columnas aparecen en maysculas por

    defecto.

    El segundo ejemplo muestra los apellidos y salarios anuales de todos los

    empleados. Debido Salario Anual contiene un espacio, se ha encerrado en

    comillas dobles. Observe que el ttulo de la columna en la salida es

    exactamente el mismo que el alias de columna.

    columna Alias

    Cuando se muestra el resultado de una consulta, iSQL * Plus normalmente

    utiliza el nombre de la columna seleccionada como el ttulo de la

    columna. Esta partida no puede ser descriptivo y, por tanto, puede ser

    difcil de entender. Puede cambiar un encabezado de columna utilizando un

    alias de columna.

    Especifique el alias despus de la columna en la lista SELECT utilizando

    un espacio como separador. De forma predeterminada, los encabezados de

    alias aparecen en maysculas. Si el alias contiene espacios o caracteres

    especiales (como # o $), o entre maysculas y minsculas, incluya el

    alias entre comillas dobles ("").

  • Diapositiva 17

    1-17 Copyright Oracle Corporation, 2001. All rights reserved.

    Operador de concatenacion

    Un operador de concatenacion

    Concatena columnas o cadenas de caracteres a otras columnas

    Est representado por dos barras verticales (||)

    Crea una columna resultante que es una expresin de caracteres

    operador de concatenacin

    Puede enlazar columnas a otras columnas, expresiones aritmticas, o

    valores constantes para crear una expresin de caracteres mediante el

    operador de concatenacin (||). Las columnas a cada lado del operador se

    combinan para hacer una columna de salida nica.

    Diapositiva 18

    1-18 Copyright Oracle Corporation, 2001. All rights reserved.

    Usando el operador de concatenacion

    SELECT last_name||job_id AS "Employees"

    FROM employees;

    Operador de concatenacin (continuacin)

    En el ejemplo, LAST_NAME y JOB_ID se concatenan y se les da a los

    empleados de alias. Observe que el empleado apellido y cdigo de trabajo

    se combinan para hacer una columna de salida nica.

  • La palabra clave que antes el nombre de alias hace que la clusula SELECT

    ms fcil de leer.

    Diapositiva 19

    1-19 Copyright Oracle Corporation, 2001. All rights reserved.

    Caracteres literales o concatenacion de

    textos.

    Un literal es un carcter, un nmero o una fecha incluida en la lista SELECT.

    Valores literales de fecha y de caracteres deben estar encerrados entre comillas simples.

    Cada cadena de caracteres se emite una vez por cada Fila devuelta.

    Cadenas de caracteres literales

    Un literal es un carcter, un nmero o una fecha que se incluye en la

    lista SELECT y que no es un nombre de columna o un alias de columna. Est

    impreso para cada fila devuelta. Las cadenas literales de texto sin

    formato se pueden incluir en el resultado de la consulta y se tratan de

    la misma como una columna en la lista SELECT.

    Fecha y caracteres literales deben estar encerrados entre comillas

    simples (''); literales numricos no necesitan.

  • Diapositiva 20

    1-20 Copyright Oracle Corporation, 2001. All rights reserved.

    Usando cadenas de textos

    SELECT last_name ||' is a '||job_id

    AS "Employee Details"

    FROM employees;

    Cadenas de caracteres literales (continuacin)

    El ejemplo de la diapositiva muestra apellidos y cdigos de trabajo de

    todos los empleados. La columna tiene el Empleado rbrica Detalles.

    Observe los espacios entre las comillas simples en la sentencia SELECT.

    Los espacios mejorar la legibilidad de la salida.

    En el siguiente ejemplo, el apellido y el salario de cada empleado se

    concatenan con un literal de dar las filas devueltas ms significado.

    SELECT apellidos || ': 1 mes de salario =' || salario mensual

    De los empleados;

    Diapositiva 21

    1-21 Copyright Oracle Corporation, 2001. All rights reserved.

    Registros duplicados

    Una salida default de todo SELECT reflejan todas las filas O registros , incluyendo las filas duplicadas.

    SELECT department_id

    FROM employees;

    filas duplicadas

  • A menos que usted indique lo contrario, iSQL * Plus muestra los

    resultados de una consulta sin eliminar filas duplicadas.

    El ejemplo de la diapositiva muestra todos los nmeros de departamento de

    la tabla EMPLEADOS. Observe que los nmeros de departamento se repiten.

    Diapositiva 22

    1-22 Copyright Oracle Corporation, 2001. All rights reserved.

    Para eliminar registros duplicados

    Se pueden eliminar las salidas duplicadas en los select usuando la palabra DISTINCT

    SELECT DISTINCT department_id

    FROM employees;

    Filas duplicadas (continuacin)

    Para eliminar filas duplicadas en el resultado, incluya la palabra clave

    DISTINCT en la clusula SELECT inmediatamente despus de la palabra clave

    SELECT. En el ejemplo de la diapositiva, la tabla EMPLEADOS realidad

    contiene 20 filas, pero slo hay siete nmeros de departamento exclusivos

    de la tabla.

    Puede especificar varias columnas tras el calificador DISTINCT. El

    calificador DISTINCT afecta a todas las columnas seleccionadas, y el

    resultado es cada combinacin distinta de las columnas.

    SELECT DISTINCT department_id, job_id

    De los empleados;

  • Diapositiva 23

    1-23 Copyright Oracle Corporation, 2001. All rights reserved.

    DISTINCT

    Usando el distinct

    Se escribe inmeditamente despues del SELECT.

    Solo se escribe una solo vez.

    El resultado sin duplicados solo es un efecto visual, si los datos estan duplicados en la tabla, seguiran duplicados aun cuando la salida nos mueste lo contrario, el comando select es solo un comando de consulta, no modifica los datos contenidos en las tablas.

    Diapositiva 24

    1-24 Copyright Oracle Corporation, 2001. All rights reserved.

    DESPLEGANDO LA ESTRUCTURA DE

    LAS TABLAS

    Use the iSQL*Plus DESCRIBE command to display

    the structure of a table.

    DESC[RIBE] tablename

    Viendo la estructura de tabla

    En iSQL * Plus, puede visualizar la estructura de una tabla con el

    comando DESCRIBE. El comando muestra los nombres de columna y tipos de

    datos, as como si una columna debe contener datos.

    En la sintaxis:

    nombretabla es el nombre de cualquier tabla, vista existente o sinnimo

    accesible para el usuario

  • Diapositiva 25

    1-25 Copyright Oracle Corporation, 2001. All rights reserved.

    Deplegando la estructura de las tablas

    DESCRIBE employees

    Viendo la estructura de tabla (continuacin)

    El ejemplo de la diapositiva muestra la informacin sobre la estructura

    de la tabla EMPLOYEES.

    En el resultado:

    Null? indica si la columna debe contener datos;

    NO NULL indica que una columna debe contener datos

    Tipo muestra el tipo de datos para una columna


Recommended