0 calificaciones0% encontró este documento útil (0 votos) 91 vistas44 páginasMaterial Introductorio Oracle 11g PDF
Es sobre Una introduccion basica para el manejo de datos con Oracle database de la version 11g
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido,
reclámalo aquí.
Formatos disponibles
Descarga como PDF o lee en línea desde Scribd
MATERIAL
INTRODUCTORIO
ORACLE 11GCapabilities of SQL SELECT Statements
Projection Selection
Table 1 Table 1
Join
Table 1 Table 2
‘Copyright © 2008, race, A ihe reseed
Capacidades de una sentencia SELECT
La sentencia SELECT recibe informacion a partir de una base de datos, Con la sentencia SELECT usted puede realizar lo
siguiente:
+ Proyeccidn: Seleccionar las columnas de las tablas que son retornadas por la consulta. Seleccione tantas como
crea necesario
+ Seleccidn: Seleccionar las filas a ser retornadas por la consulta. Varios criterios pueden ser usados para restringir
las filas a recibir
+ Uniones: Traer informacién que esta almacenada en mas de una tabla especificando el vincula entre ellas.Basic SELECT Statement
SELECT *|{ [DISTINCT] column| expression
ias]
+ SELECT identifies the columns to be displayed.
+ FROM identifies the table containing those columns.
Copyright © 2009, race All ngs reserved.
Sentencia Basica SELECT
En su forma simple, una sentencia SELECT debe incluir lo siguiente:
* Una clausula SELECT, La cual especifica las columnas a ser desplegadas
+ Una clausula FROM, que identifica la tabla 0 tablas que contienen las columnas especificadas en la clausula
SELECT
Enla sintaxis
SELECT Es una lista de una o més columnas
* Selecciona todas las columnas
DISTINCT. Elimina duplicados
Column|expression _Selecciona las columnas nombradas o Ia expresién
Alias Da alas columnas seleccionadas una cabecera diferente
FROM table Especifica la tabla que contiene las columnasSelecting All Columns
sevectE]
FROM departments
1 cerarer 09 vePamtwe ae|@ waaceR 0B ocaTON 0)
3 s0stw0ne vm 1s]
, oascertey 2 sn
‘ so cewacteg on sna]
(Copyright © 2000, race. A ight
Seleccionando todas las columnas
Puede desplegar todas las columnas de datos de una tabla usando el cardcter * en un SELECT.
También puede realizar esta accion escribiendo una a une las columnas que componen la estructura de la tabla para
mostrarlas todas.Selecting Specific Columns
SELECT |department_id, location_id
FROM ‘departments
‘Copyright © 2009, Oracle. All rights reserved.
Especificando columnas especificas
Puede usar la cléusula SELECT para especificar una a una las columnas deseadas para proyectar en la consulta, debe
separarlas por coma |,), de igual forma es importante el orden en el que coloca cada una de las columnas en la clausula
SELECT ya que este indica la posicién en la que sera mostrada en el resultado de la ejecucién,Arithmetic Expressions
Create expressions with number and date data by using
arithmetic operators.
Copyright © 2009, Oracle. All rights reserved
Expresiones Aritméticas
Puede ser que necesite modificar la forma en que la informacién es mostrada, 0 desarrollar célculos o mirar posibles
escenarios. Todo esto es posible usando expresiones aritméticas, Una expresion aritmética puede contener nombres de
columnas, valores numéricos constantes, y operadores aritméticos.
NOTA: para valores de tipos DATE o TIMESTAMP solo puede usar los operadores de suma y resta,Using Arithmetic Operators
Toast nave | satany |B sacarvsaoo
1 Keg 24000 24300]
2 Keethar ‘rom 17300]
4 thal 000 200]
5 Erne 000 300]
6 Loertz 200 500]
7 mourgos soo 10n|
8 Rae ssn 200]
8 Davies soo 3400]
10 Matos 2600 2300]
Copyright © 2009, Oracle, Alright s reservedOperator Precedence
FROM employees
SELECT last_name, salary, |12*salary+100 @
WLast nme] saLanv |B 12Saanvei00
1 ing 24c00 38100)
2 Mostar 700 aoa)
2 DeHaen 1700 2oaco)
SELECT last_name, salary, |12*(salary+100) @®
FROM employees:
RACLE
‘Copyright © 2009, Oracle. All rights reserved.
Precedencia de los operadores
Si una expresin aritmética tiene mas de un operador, la multiplicacién y la divisién seran los primeros operadores a ser
evaluades. Si los operadores tienen la misma prioridad, la evaluacién es realizada de izguierda a derecha. Puede usar
paréntesis para forzar la ejecucién de algunos operadores de manera previa,
Reglas de precedencia
+ Multiplicacién y divisién ocurre antes que la suma y la resta
+ Operadores de la misma prioridad se evaldan de izquierda a derecha
Los paréntesis son usados para sobrescribir la precedencia por defecto o para clarificar la sentenciaDefining a Null Value
+ Null is a value that is unavailable, unassigned, unknown,
or inapplicable.
+ Null is not the same as zero or a blank space.
SELECT last_name, job_id, salary,
FROM — employees;
Bast wane] 060 |) savary J] commission pcr
1 ka AD PRES 24000 ‘|
2Kocher __AD_VP 700 co]
12 Zotey SAWN 1089 0
43 Ave SA REP 10m 03
14 Teyor SARE 00 02
13 Hone AC MOR 20 co)
20 Gite [AC _ACCOUNT x0 co)
SE
‘Copyright © 2009, Oracle. All rights reserved.
Sia una fila Ie falta un valor en una columna en particular, tal valor es llamado nulo © que contiene un valor nulo.
Null es un valor que es desconocido, no asignado, no disponible o inaplicable. Null no es lo mismo que cero o un espacio
en blanco, El cero es un numero y el espacio es un caracter,
NOTA: por defecto sql usara la palabra null para especificar un valor desconocido pero usted puede modificar esto por
un valor que considere mas adecuado, Cambiando el valor en tools->Preferences-»Database-Advanced Parameters.Null Values in Arithmetic Expressions
Arithmetic expressions containing a null value evaluate to null.
12*salary*commission_pct
SELECT last_name
FROM employee:
BLAST Nave |) 12SALARY-CoMMSSON PCT
1 keg ‘ui
2 Koohhor us]
12 Zoey 725200]
13 Abel 29800]
14 Taser 20840]
19 Hin oa]
20 ez oa]
‘Copyright © 2009, Oracle. All rights reserved.
Valores nulos en expresiones aritméticas
Si cualquier valor de una columna es null en una expresién aritmética, esta es evaluada en nullUsing Column Aliases
SELECT lastonane|AS[ugua) commission pct
FROM employees;
SELECT last_name Name’) , salary*12 [Annual Salar
FROM — employees;
‘Copyright © 2009, Oracle. All rights reserved.
Usando ali
1s de columnas
Generalmente cuando se utiliza una expresién en la clausula SELECT la cabecera proyectada en los resultados obedece a
la descripcion de la expresin, También puede ser que el nombre de la columna no es lo suficientemente claro para
expresar la informacion de las tablas, es en estos casos donde usar un alias de columna es conveniente.
Para realizar esto puede después de la expresién o columna colocar la palabra AS seguida del nuevo nombre de la
cabecera.
La palabra AS no es obligatoria por lo que puede crear alias simplemente colocando el nuevo nombre de cabecera
Inmediatamente después de la columna o expresién
Sil alias contiene espacios debe usar "” para asignar el alias a la columna o la expresi6nConcatenation Operator
A concatenation operator:
+ Links columns or character strings to other columns
+ Is represented by two vertical bars (||)
* Creates a resultant column that is a character expression
SELECT last_name||job_id AS "Employees:
FROM loyees
2 DaviesST_CLERK
23 DettaenAD_VP
4 erncut_PROG
5 Faye REP
eon
Copyright © 2009, Oracle. All nights reserved
Operadior de Concatenacién
Puede unr columnas a otras columnas, expresiones aritméticas, 0 valores constantes para crear expresign de caracteres
usando el operador de concatenacion (||). Elementos a cada lado del operador se combinan para una Unica columna de
salida.
Si concatena una cadena de caracteres con una columna o expresién con valores nulos, se combina realmente con un
cardcter vacio.Using Literal Character Strings
SELECT last_name | Fis 2 lobia
jetails”
AS "Employee
FROM employees;
B_Enoioyee Detats
1 Abele SA, REP
2 Daviess @ST_CLERK
3 De Haan is @ AD_VP
4 EmetieatT_FROS
5 Fay isa Mm REP
48 Verges e a ST_CLERK
19 Whakn'e @ AD_ASST
20 obey isa SA MAN
Ears
Copyright © 2009, Oracle, Allrights reserved.
Uterales
Un literal es cardcter, numero o fecha que es incluida en una lista de elementos del SELECT. No es una columna o un
alias de columna. Es impresa por cada fila retornada,
Literales fecha y caracteres deben ser encerados entre comillas simples “’Alternative Quote (q) Operator
+ Specify your own quotation mark delimiter.
+ Select any delimiter.
* Increase readability and usability.
SELECT department_name ||[q'[ Department's Manager Id
|| manager_id
AS "Department and Manager"
FROM departments;
OT cerernert ora wermgs
1 Aawicraton Depron Manage 03
2 Mating Doerner Manaoe 201
5 Shang Depwrert Mager 24
{ tTOmomtrens Norager 193
5 Silos Dapartnerte Manager 40
‘5 exec Derren 100
7 Accouting Dopartnarto Manage 205
8 cortracing partners Manager ht
Copyright © 2009,
race. All rights reserved,
Operador alternativo Quote(q)
Se debe usar este operador cuando por alguna razén los valores de los literales incluyen el cardcter comilla simple ya
que esta tiene funcién particular y un significado especifico
Puede seleccionar cualquier delimitador conveniente, incluyendo cualquiera de los siguientes pares de caracteres: [],0,()Duplicate Rows
The default display of queries is all rows, including duplicate
rows.
SELECT department_id
FROM employees; @)
@_berarmmenr_o
0
a
fo
SELECT [DISTINCT Hepartment_id @
FROM employees:
berate]
1 ot)
‘Copyright © 2009, Oracle. All rights reserved.
Eliminacién de Duplicados
SQL por defecto cuando ejecuta una consulta no elimina valores duplicados, para que lo haga debe especificar la palabra
DISTINCT.
Una ver se coloca Ia palabra DISTINCT se considerar como fila repetida aquella en que sus valores coincida con una fila
previamente registrada en el resultado de la consulta,(debe coincidir todos y cada uno de los campos que proyecta la
cldusula SELECT)Displaying the Table Structure
+ Use the DESCRIBE command to display the structure of a
table.
* Or, select the table in the Connections tree and use the
Columns tab to view the table structure.
DESC[RIBE] tablename
[oa oxtma | coum || frimer ey |G coments
a 1 ‘Pim con of ean
varouar0 8778 19
neers)
nuecns) vee
2 up Aranatcamna toms rome
3 un mnage iet
e832
‘Copyright © 2009, Oracle, All rights reserved.
Desplegado la estructura de una tabla
Puede ver la estructura de una tabla usando la clausula DESCRIBE DESC con el nombre de Ia tabla, esta permite
visualizar cuales son cada una de la columnas que componen la tabla especificando el tipo de dato de cada columna y si
estas tienen la restriccion de admitir o no valores nulos,Using the DESCRIBE Command
DESCRIBE employees
ERCRIBE waployees
iene mute
fnviorex_t0 OT HOLL MUREER(6)
Furst muse vacua (20)
ast lame wor wou Yar (25)
tt oT HOLE YAREIARS(28)
Paoer_me vasa (20)
son tb for MOLL YaRERAR2(20)
satire EER 2)
comet sston_rer ween (2,2)
fmuscea. inner 6)
Devarrasir_tp 7
11 rows seteceed
‘Copyright © 2009, Oracle. All rights reserved.Quiz
Identify the SELECT statements that execute successfully.
SELECT first_name, last_name, job_id, salary*12
AS Yearly Sal
FROM employees;
SELECT first_name, last_name, job_id, salary*12
yearly sal
FROM employees;
SELECT first_name, last_name, job_id, salary AS
yearly sal
FROM — employees;
SELECT first_name+last_name AS name, job_Id,
salary*12 yearly sal
FROM employees;
Ear
‘Copyright © 2009, Oracle. All rights reserved.Limiting the Rows That Are Selected
+ Restrict the rows that are returned by using the WHERE
clause:
SELECT *|{ [DISTINCT] column/expression [alias],...}
FROM table
[WHERE condition(s)]
+ The WHERE clause follows the FROM clause.
‘Copyright © 2009, Oracle. All ights reserved.
Lit
itando las filas que son seleccionadas
Puede restringir las filas seleccionadas de una consulta usando Ia clausula WHERE. Une clausula WHERE contiene una
condicion que debe ser verificada y esta inmediatamente después de la clausula FROM. La condicién es evaluado en
‘true, la fila evaluada es agregado al resultado,
En a sintaxis:
WHERE restringe la consulta para que las filas sean verificadas por una condicion,
Condition _EstS compuesta de nombres de columnas, expresiones, constantes y un
operador de comparacién. Una condicién especifica la combinacién de una o mas expresiones
y operadores légicos, y retorna el valor de TRUE, FALSE O NULLUsing the WHERE Clause
SELECT employee_id, last_name, job_id, department_id
FROM employees
Copyright © 2009, Oracle. All rights reserved.
NOTA: no se pueden usar alias de columna en una clausula WHERECharacter Strings and Dates
+ Character strings and date values are enclosed with single
quotation marks.
+ Character values are case-sensitive and date values are
format-sensitive.
+ The default date display format is DD-MON-RR.
SELECT last_name, job_id, department_id
FROM employees
WHERE last_name =[Whalen ] ;
SELECT last_name
FROM employees
WHERE hire_date =|'17-FEB-96'];
‘Copyright © 2009, Oracle. All rights reserved.
Cadenas de caracts
sy fechas
Cadenas de caracteres y fechas en una clausula WHERE deben ser encerradas entre comillas simples “”
Todas las busquedas de caracteres son sensibles a maydsculas y mindsculas.
La base de datos Oracle almacena fechas en un formato numérico interno, representando la centuria, afio, mes, dia,
horas, minutos y segundos. El despliegue por defecto de las fechas es en el formato DD-MON-RRComparison Operators
oracles AYU
ee
BETWEEN Between two values (inclusive)
AND
IN(set) Match any of a list of values
LIKE Match a character pattern
‘Copyiight © 2009, Oracle. All rights reserved.
Operadores de comparacién
Operadores de comparacién son usados en condiciones para comparar una expresién con otro valor o expresién.Using Comparison Operators
SELECT last_name, salary
FROM — employee:
WHERE — salar;
st pune @ SAaRv]
‘aoe 750
2Vege 20
Soars
‘Copyright © 2009, Oracle, All ights reserved.Range Conditions Using the BETWEEN Operator
Use the BETWEEN operator to display rows based on a range of
values:
SELECT last_name, salary
FROM employees
WHERE salary| BETWEEN 2500 AND 3500 |;
Lower limit Upper limit
B uastyane |) satay
4 Rais 3500,
2 Deviet 3100
3 Netos 2800
4 Voross 2500
‘Copyright © 2009, Oracle. All rights reserved.
Condiciones de rango usando el operador BETWEEN,
Puede desplegar filas basado en un rango de valores usando el operador BETWEEN. El rango especificado debe tener un
valor limite inferior y uno superior los cuales se incluyen dentro de valores validos del rango.
Este operador puede ser también usado con valores de tipo carscter y de tipo fecha.Membership Condition Using the IN Operator
Use the IN operator to test for values in a list:
SELECT employee_id, last_name, salary, manager_id
FROM employees
WHERE = manager_id{IN_ (100, 101, 201
@ eriover 0] LAstviwe |g saLaRy |g MANAceR_o
1 101 Kocher +7000 100
2 0 eHsen 7000 100
a 124Mougos 300 100
4 149 Zetkey 10500 100
5 201 Hartt ‘000 100
7 225 Hoghs ‘2000 101
8 moFay 000 m1
‘Copyright © 2009, Oracle. All rights reserved,
Condicion de membresia usando el operador IN
Para verificar valores en un conjunto especifico, ese el operadior IN, La condicién definida usando el operadar IN es
también conocida como condicién de membresia,
El operador IN puede ser usado con valores de cualquier tipo de dato. Si los valores usados son de tipo caracter 0 fecha
estos deben colocarse entre comillas simples *
Internamente el servidor de Oracle procesa el operador IN como si fuera un conjunto de comparaciones légicas OR y no
tiene ningtin beneficio de rendimiento sobre esta estructura, es usado légicamente por simplicidad.Pattern Matching Using the LIKE Operator
+ Use the LIKE operator to perform wildcard searches of
valid search string values.
+ Search conditions can contain either literal characters or
numbers:
— % denotes zero or many characters.
— _ denotes one character.
SELECT first_name
FROM employees
WHERE first_name[CIKE 5%];
Eres
‘Copyright © 2009, Oracle. All rights reserved
Patrones de emparejamiento usando el operador LIKE
Puede ser que no siempre conozca el valor exacto a buscar. Puede seleccionar filas que concuerden con un patron de
caracteres usando el operador LIKE. Dos simbolos pueden ser usados para construir la cadena de busqueda.
Simbolo Descripeién
% Representa cualquier secuencia de cero 0 mas caracteres
Representa cualquier caracter (solo uno)Combining Wildcard Characters
+ You can combine the two wildcard characters (%, _) with
literal characters for pattern matchin:
SELECT last_name
FROM employees
WHERE last_name [LIKE '_o%' |;
@ ust ae
1 Kocher
2 Loretz
3 Mourgos
+ You can use the ESCAPE identifier to search for the actual
% and _ symbols.
‘Copyricht © 2009, Oracle. All rights reserved.
El simbolo % y _ pueden ser usados en cualquier combinacién con caracteres literales.
Identificador de escape
Se usan cuando por alguna razén el cardcter % 0 el cardcter _ 0 ambos necesitan ser usados como patrones de busqueda
yno camo comodines del patrén con su significado.
SELECT * FROM EMPLOYEES WHERE JOB_ID LIKE “S4SA\_9%” ESCAPE ‘\’Using the NULL Conditions
Test for nulls with the IS NULL operator.
SELECT last_name, manager_id
FROM _employees
manager_id IS NULL];
TAST NAVE [B waNnceR_O]
1 kg ory
Eam
Copyright © 2009, Oracle, Allrights reserved.
Usando condiciones con NULOS
Se incluye el operador IS NULL yIS NOT NULL para trabajar valores o expresiones con valores nulos. Tenga en cuenta que
no es posible verificar si un valor es nulo con el operador =.Defining Conditions Using the Logical Operators
ey mmc
Returns TRUE if both component conditions
are true
Retums TRUE If ether component condition
istrue
Returns TRUE if the condition is false
‘Copyright © 2009, Oracte, All rights reserved,
Definiendo condiciones Usando operadores Logicos limite
na condicién légica combina el resultado de dos condiciones o mas para producir un Gnico resultado. Una fila ser
considerada en la respuesta Gnicamente si el resulta final de toda la estructura es evaluada como TRUEUsing the AND Operator
AND requires both the component conditions to be true:
SELECT employee_id, last_name, job_id, salary
FROM
WHERE
AND
emp loyes
1
2
Demoveso/§ astnve|§ 1080 ]§ sary
149 Zethey ‘SAMAN 10500,
201 Herts MMA 13000
‘Copyright © 2009, Oracle. Al rights reserved
Resultado de combinar dos expresiones con el operador AND.
AND TRUE FALSE, NULL
TRUE TRUE FALSE NULL
FALSE FALSE FALSE FALSE
NULL [NULL FALSE NULL
Ojo que en todas las bisquedas de caracteres tiene importancia si se usa miniiscula 0 mayiscula,Using the OR Operator
OR requires either component condition to be true:
SELECT employee_id, last_name, job_id, salary
employees
Dance) Use wool saan
1 100K ADRES 2000
2 torvocte 0.8 ‘7010
3 ta2cerem 40.98 00
4 ftMowgs ——[Link] 20
: ‘a zoiey SANA 10800
‘ treat SAR 11009
7 iverson CMAN 13000
® msicone ACR aD
‘Copyright © 2009, Oracle. All rights reserved.
Resultado de combinar dos expresiones con el operador OR
OR TRUE FALSE NULL
TRUE TRUE TRUE TRUE
FALSE TRUE FALSE NULL
NULL TRUE NULL NULLUsing the NOT Operator
SELECT last_name, job_id
FROM _employees
WHERE [job_id
NOT IN (‘IT_PROG', 'ST_CLERK', 'SA_REP
TE ustane 1060
1 De Hien ‘ADP
2 Fay ac Rep
9 Gite |AC_ACCOUNT
4 Hate Kan
' toa AC MOR
6 kg AD PRES
2 Mouss —STLMAN
han ADASSI
10 Zithey saan,
La siguiente tabla muestra los resultados de aplicar el operador NOT a una condicion:
NOT TRUE FALSE NULL
FALSE TRUE NULL
El operador NOT puede ser usado en conjunto con otros operadores SQL como BETWEEN, LIKE, IN y NULL.Rules of Precedence
oer Cm CUA)
es
[___2___ | concatenation operator
[3_[omparsenconatons |
[ 4 | 1S [NOT] NULL, LIKE, [NOT] IN
a
a
NOT logical condition
| 3 | ‘AND logical condition
[| 9 | OR logical condition
You can use parentheses to override rules of precedence.
‘Copyright © 2009, Oracle, All rights reserved.Rules of Precedence
SELECT last_name, job_id, salary
FROM employees
WHERE job_id = 'SA_REP’
job_id = 'AD_PRES’
salary > 15000;
@_vast_name J) Joe0 |§ saLary |
1 AD PRES 24000
2 Abe SA REP 11000
3 Toybr SA REP e200
4 orart SA REP 7000
SELECT last_name, job_id, salary
employees
(job_id = 'SA_REP’
job_id = ‘AD_PRES')
salary > 15000;
Copyright © 2009, Oracle, All rights reserved.Using the ORDER BY Clause
* Sort retrieved rows with the ORDER BY clause:
- ASC: Ascending order, default
~- DESC; Descending order
+ The ORDER BY clause comes last in the SELECT
statement:
SELECT last_name, job_id, department_id, hire_date
FROM __employees
Tasiwe]_ce_[E_cerarnven fre Dare
1 ey 0 sors?
2 AD ASST orrsersr
‘rims POO soon
stra to sonny
eomten 0 morse
‘Copyright © 2009, Oracle. All ights reserved,
Usando la clausula ORDER BY
El orden en que las fas son retornadas al ejecuta una consulta es indeterminado. La clausula ORDER BY es usada para
ordenar las filas. Sin embargo si usa la clausula ORDER BY esta debe ser la ultima dentro de la estructura SQL.
Puede especificar una expresi6n, un alias, 0 una posicidn de columna como condicion de ordenamiento,
NOTA: use las clausulas NULLSFIRST 0 NULLSLAST para especificar donde las filas retornadas con valores nulos deben
aparecer, al dnico 0 al final de la secuencia de ordenamient.Sorting
+ Sorting in descending order:
SELECT last_name, job_id, department_id, hire date
FROM employees.
ORDER BY hire date[DESC] ;
Sorting by column alias:
SELECT employee.
Tast_name, salary*12
ACLE
Copyright © 2009, Oracle. All rights reserved.Sorting
+ Sorting by using the column’s numeric position:
SELECT last_name, job_id, department_id, hire date
FROM employees
ORDER BY[3;]
Sorting by multiple columns:
SELECT last_name, departmen
FROM _ employees
department_id, salary D
Copyright © 2009, Oracle. All rights reserved,Substitution Variables
+ Use substitution variables to:
+ Use substitution variables to supplement the followin:
Temporarily store values with single-ampersand (&) and
double-ampersand (&&) substitution
WHERE conditions
ORDER BY clauses
Column expressions
Table names
Entire SELECT statements
Copyright © 2009, Oracle, Allrights reserved.
Variables de Sustitucién
Hasta ahora todas las sentencias SQL han sido ejecutadas con columnas, condiciones y valores predeterminados.
Puede crear reportes que permiten a los usuarios prover valores propios para restringir el rango de datos retornados
usando variables de sustitucién. Puede incluir variables de sustitucién en un archivo decomandos una sentencia SQL.
Una variable puede ser pensada como un contenedor en el cual los valores son temporalmente almacenados, Cuando la
sentencia se ejecuta, el valor almacenado es sustituido.
También puede definir variables usando el comando DEFINE. DEFINE crea y asigna un valor a una variableUsing the Single-Ampersand Substitution
Variable
Use a variable prefixed with an ampersand (&) to prompt the
user for a value:
SELECT employee_id, last_name, salary, department_id
FROM employees
WHERE _employee_id =[&employee_num] ;
ores
EVPLOYEE NUM.
ee |
Ears
‘Copyright © 2009, Oracle. All rights reserved.
Usando & para variables de sustitucién
Cuando se ejecuta un reporte, los usuarios usualmente quieren restringir la informacion resultante de manera dinamica.
SQL PLUS o SAL Developer permiten esto por medio de variables de sustitucidén. Use un ampersand& para identificar
cada variable en su sentencia SQL.
Notacion Descripeion
‘variable_usuario Indica una variable en una sentencia SQL; sila variable no existe,
SQL *Plus 0 SQL Developer pide al usuario un valor (la nueva
variable es descartada después que es usada)
Con el & se le pedira al usuario un valor cada ver que el comando es ejecutado si la variable no existe.Using the Single-Ampersand Substitution
Variable
Ses (|
EMPLOYEE NUM
fr
@ evtovee.o § Last_nane |) saary |@) DEPARTMENT 10
1 101 Koch 17000 2
‘Copyriaht © 2009, Oracle. Alliahts reservedCharacter and Date Values with
Substitution Variables
Use single quotation marks for date and character values:
SELECT last_name, department_id, salary*12
FROM employees
fonenomenae
ast nan [D_verarneen 0] SALaRV2
‘Hud = 8108000
2 eine © 72000
3 Loree 0 50400
x
‘Copyright © 2009, Oracle. All rights reserved.
NOTA: Tenga en cuenta que cuando el valor de sustitucién es una cadena de caracteres o fechas debe colocar la variable
de sustitucion entre comillas simples “”Specifying Column Names,
Expressions, and Text
SELECT employee_id, last_name, job_id
FROM employees
[Rcondition_]
(x)
Copyright © 2009, Oracle. All ights reserved,
Las variables de sustitucién pueden ser usadas para reemplazar valores de la columnas en la cldusula SELECT, nombres
de tablas en la clausula FROM, condiciones en la cléusula WHERE y criterios de ordenamiento en la clausula ORDER BY.Using the Double-Ampersand
Substitution Variable
Use double ampersand (&&) if you want to reuse the variable
value without prompting the user each time:
TH cetover olf wast nave |G i060 |) oeranrvevr_o]
1 200 Whalen A0_ASSI 10]
2oiHenten MK MAN 2x|
marae Mc REP 2s|
EEE
Cuando necesite definir una variable de sustitucién que es usada varias veces en una misma sentencia seria conveniente
definirla de tal forma que solicite este valor solo una vez, para que esto ocurra debe definirla con el operador &&Using the DEFINE Command
+ Use the DEF INE command to create and assign a value to
a variable.
+ Use the UNDEF INE command to remove a variable.
DEFINE
SELECT employee_id, las
FROM employees
WHERE employee_id
UNDEFINE employee_num
ero
Copyright © 2009, Oracle. All ights reserved.
Adicionalmente también puede definir variables de sustitucién con valores fijos, por medio de la sentencia DEFINE.
Con DEFINE la variable definida tendrd vigencia durante el tiempo que él usuario tenga una sesién activa, para liberarla
debe usar el operador UNDEFINE
También podría gustarte
SQL01 Es
Aún no hay calificaciones
SQL01 Es
29 páginas
Les 01
Aún no hay calificaciones
Les 01
35 páginas
Sql-A
Aún no hay calificaciones
Sql-A
52 páginas
Sql-A
Aún no hay calificaciones
Sql-A
50 páginas
Comandos SQL
Aún no hay calificaciones
Comandos SQL
25 páginas
Tarea Lucy
Aún no hay calificaciones
Tarea Lucy
17 páginas
10capsql PDF
Aún no hay calificaciones
10capsql PDF
248 páginas
DP 2 1 Esp
Aún no hay calificaciones
DP 2 1 Esp
23 páginas
Les 02
Aún no hay calificaciones
Les 02
28 páginas
So Tipos
Aún no hay calificaciones
So Tipos
3 páginas