Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
SECCIN: 61D
LIMA PER
NDICE
CONSULTAS BSICAS DE SQL.........................................................................3
OPERADORES:............................................................................................. 3
BETWEEN........................................................................................... 3
IN....................................................................................................... 4
LIKE.................................................................................................... 4
FUNCIONES:................................................................................................ 6
LOWER............................................................................................... 6
UPPER................................................................................................ 7
SUBSTR.............................................................................................. 7
LPAD.................................................................................................. 8
ROUND............................................................................................... 8
TRUNC............................................................................................... 9
BETWEEN
Es un operador que trabaja con intervalos de valores, "BETWEEN" significa
"entre". Trabaja con intervalo de valores.
Este operador se puede emplear con tipos de datos numricos y money (en
tales casos incluyen los valores mnimo y mximo) y tipos de datos fecha y
hora (incluye slo el valor mnimo). No tiene en cuenta los valores "null".
EJEMPLO:
En el siguiente ejemplo se devuelven los empleados de Adventure Works
Cycles cuya tarifa por hora se encuentra entre 27 y 30.
USE AdventureWorks2012;
GO
SELECT e.FirstName, e.LastName, ep.Rate
FROM HumanResources.vEmployee e
JOIN HumanResources.EmployeePayHistory ep
ON e.BusinessEntityID = ep.BusinessEntityID
WHERE ep.Rate BETWEEN 27 AND 30
ORDER BY ep.Rate;
GO
El conjunto de resultados es el siguiente.
FirstName LastName
Rate
----------- ------------------ -------Paula
Barreto de Mattos 27.1394
Karen
Berg
27.4038
Ramesh
Meyyappan
27.4038
Dan
Bacon
27.4038
Janaina
Bueno
27.4038
David
Bradley
28.7500
Hazem
Abolrous
28.8462
Ovidiu
Cracium
28.8462
Rob
Walters
29.8462
Sheela
Word
30.0000
IN
Este operador devuelve aquellos registros cuyo campo indicado coincide con
alguno de los en una lista. Su sintaxis es:
Expresin [Not] In(valor1, valor2, . . .)
SELECT * FROM Pedidos WHERE Provincia In ('Madrid', 'Barcelona',
'Sevilla');
Cundo se debe usar el operador IN?
Cuando necesites comparar un columna con una gran cantidad de valores en
la sentencia WHERE. El objetivo de este operador es ahorrarte mltiples
condiciones de igualdad concatenadas.
Supongamos que posees una tabla llamada empleado y que deseas consultar
los empleados que tengan los siguientes nombres: James, Ricardo,Brayan y
Laura. Normalmente muchas personas que desconozcan la funcin de IN
harn lo siguiente:
SELECT *
FROM EMPLEADO
WHERE NOMBRE=James OR
NOMBRE=Ricardo OR
NOMBRE=Brayan OR
NOMBRE=Laura
LIKE
Se utiliza para comparar una expresin de cadena con un modelo en una
expresin SQL. Su sintaxis es:
Expresin LIKE modelo
En donde expresin es una cadena modelo o campo contra el que se compara
expresin. Se puede utilizar el operador Like para encontrar valores en los
campos que coincidan con el modelo especificado. Por modelo puede
especificar un valor completo (Ana Mara), o se pueden utilizar caracteres
comodn como los reconocidos por el sistema operativo para encontrar un
rango de valores (Like An*).
El operador Like se puede utilizar en una expresin para comparar un valor de
un campo con una expresin de cadena. Por ejemplo, si introduce Like C* en
una consulta SQL, la consulta devuelve todos los valores de campo que
comiencen por la letra C. En una consulta con parmetros, puede hacer que el
usuario escriba el modelo que se va a utilizar.
WHERE (AUTOR='BORGES') OR
(EDITORIAL='PAIDOS' AND PRECIO<20);
FUNCIONES:
LOWER
Convierte en minsculas todas las letras de una cadena de texto.
Sintaxis:
LOWER(<text>)
Text: El texto que desea convertir en minsculas o una referencia a una
columna que contiene texto.
EJEMPLO1:
SELECT LOWER(HoLA FIa);
hola fia
EJEMPLO 2:
Nombre de columna o campo: placaAuto
Nombre de la tabla: AUTO
SELECT LOWER(placaAuto) FROM AUTO;
//si uno de los autos tiene placa A7J-145 se convertir en a7j-145.
6
UPPER
Convierte una cadena de texto en letras maysculas
Sintaxis
UPPER (<text>)
Text: El texto que desea convertido en maysculas o una referencia a una
columna que contiene texto.
EJEMPLO 1:
SELECT UPPER(HOLa FIa);
hola fia
EJEMPLO 2:
Nombre de columna o campo: nomPropietario
Nombre de la tabla: PROPIETARIO
SELECT UPPER(nomPropietario)
FROM PROPIETARIO;
//Si el nombre del propietario es joan jaime pasar a
JOAN
JAIME
SUBSTR
Las funciones SUBSTR devuelven una cantidad de caracteres, a partir de la
posicin de carcter, substring_length caracteres largos. SUBSTR calcula
utilizando longitudes de caracteres definidos por el conjunto de caracteres de
entrada. SUBSTRB utiliza bytes en lugar de caracteres.
Si la posicin es 0, entonces se trata como 1.
Si la posicin es positiva, entonces la base de datos de Oracle cuenta desde el
comienzo de caracteres para encontrar el primer carcter.
Si la posicin es negativa, entonces Oracle cuenta atrs desde el final de los
caracteres.
EJEMPLO:
SELECT SUBSTR (Store_Name, 3)
FROM Geography
WHERE Store_Name= Los Angeles;
's Angeles'
LPAD
Esta funcin rellena el lado izquierdo de una cadena con un conjunto especfico
de caracteres (cuando la cadena no es nulo).
LPAD('tech', 7);
Retorna: ' tech'
LPAD('tech', 2);
Retorna: 'te'
LPAD('tech', 8, '0');
Retorna: '0000tech'
LPAD('tech on the net', 15, 'z');
Retorna: 'tech on the net'
LPAD('tech on the net', 16, 'z');
Retorna: 'ztech on the net'
ROUND
La funcin ROUND () se utiliza para redondear un campo numrico al nmero
de decimales especificados.
Sintaxis
SELECT ROUND (column_name, decimals) FROM table_name;
Parmetros:
column_name : Requerido. Este campo se redondeara.
decimals: Requerido. Especifica el nmero de decimales que retornar.
ProductI
D
1
ProductName
Chais
SupplierI
D
1
CategoryI
D
1
Chang
Aniseed Syrup
Chef Anton's
Cajun Seasoning
Chef Anton's
Gumbo Mix
2
2
Unit
Price
18
10 boxes x 20
bags
24 - 12 oz
bottles
12 - 550 ml
bottles
48 - 6 oz jars
36 boxes
19
10
21.3
5
25
TRUNC
Trunca un nmero en un entero al quitar la parte decimal, o fraccionaria, del
nmero.
Sintaxis
TRUNC (<number>, <num_digits>)
Parmetros:
Number: Nmero que desea truncar.
num_digits: Nmero que especifica la precisin del truncamiento; si se omite, 0
(cero).
EJEMPLO:
-La frmula siguiente devuelve 3, la parte entera de pi.
=TRUNC(PI())
-La frmula siguiente devuelve -8, la parte entera de -8,9.
=TRUNC(-8.9)