/**** sentencias practicas de sql ***/
/**** LIKE ***/
-----Busqueda letra incial y final, para el ejemplo todo los nombres que empiezan por c y
terminen en A
SELECT [ID]
,[Nomb]
,[Fecha]
,[FECHA2]
FROM [prueba2].[dbo].[prueba] WHERE Nomb like 'C%_A'
---Busqueda de un rango, para el ejemplo todos nombres que empiezan 'a' la 'n' es decir
(a,b,c,d,e,f,g,h,i,j,l,m,n)
SELECT [ID]
,[Nomb]
,[Fecha]
,[FECHA2]
FROM [prueba2].[dbo].[prueba]
where Nomb like '[A-n]%'
/*** buscada que incia por un caracter pero no importa en que termina, para el ejemplo
buscos los nombres que empiezan por A,V,P ***/
SELECT [ID]
,[Nomb]
,[Fecha]
,[FECHA2]
FROM [prueba2].[dbo].[prueba]
where Nomb like '[AVP]%'
---Busqueda que no incluya las del rango, para el ejemplo todos nombres que no empiezan
'a' la 'n' es decir que empiesen por(o,p,q,r,s,t...)
SELECT [ID]
,[Nomb]
,[Fecha]
,[FECHA2]
FROM [prueba2].[dbo].[prueba]
where Nomb like '[^A-n]%'
/*** buscar caracter que el siguiente caracter coincida (el siguiente caracter esta despues de
un comodin
que puede ser cualquiera des un (/,!,=,..) para el ejemplo busco las fechas del mes 04 pero
que el dia inicie en 1
esdecir me va a trael las fecha (01, 10, 11,12, 13 ,14,15, 16,17,18,19) ****/
SELECT [ID]
,[Nomb]
,[Fecha]
,[FECHA2]
FROM [prueba2].[dbo].[prueba]
where Fecha like '%04 #-1%' ESCAPE '#' --comodin
/***
Funciones par caracter
LOWER: Convierte en minúsculas la cadena de caracteres.
UPPER: Convierte en mayúsculas la cadena de caracteres.
CONCAT: Concatena valores
SUBSTR: Extrae una cadena de una longitud y desde una posición.
***/
SELECT
UPPER([Nomb])NombreMAY,
LOWER([Nomb])NombreMIN,
CONCAT(Fecha,' ',FECHA2,' ',NOMB,' ',Fecha) FECHA,
SUBSTRING (Nomb,3,2)CARACTERES
FROM [prueba2].[dbo].[prueba]
/*** Funciones numericas
ROUND: Redondea un valor al decimal especificado.
TRUNC: Trunca un valor en el decimal especificado.
MOD: Devuelve el resto de la división.
***/
SELECT
round(precio,2)PRECIO
FROM [prueba2].[dbo].[prueba]
/**** operadores que de vuleven mas de una fila any
ANY compara un valor con cada valor
devuelto por la subconsulta
Notas:
• < ANY significa “menor que cualquiera”.
• > ANY significa “más que cualquiera”.
• = ANY significa lo mismo que IN.
para el ejemplo tra el registro mayor a cualquiera de los registros incluidos en la
subconsulta***/
select Fecha,precio,Nomb from prueba where precio > any (select precio from prueba
where Fecha<'20200421')
/**** ALL compara un valor con cada valor devuelto por una
subconsulta. Para el ejemplo trae lso registro con precio mayor a los de el resultado de la
subconsunta ***/
select Fecha,precio,Nomb,* from prueba where precio > all (select precio from prueba
where Fecha<'20200421')
insert into prueba( Nomb,Fecha,fecha2,precio)values ('Jose
Manuel','20200327','20200427','50628.1437')
SELECT * FROM prueba
DELETE CASCADE
FOR UPDATE
INTERSECT
MINUS
CONNECT BY y START WITH
SELECT cont_facturas FROM CONFIGURACION
WHERE empresa = 1 FOR UPDATE OF cont_facturas;