Hola bienvenidos a este nuevo capítulo del curso completo de base de datos y seguimos con el lenguaje
SQL seguimos con nuestra instrucción Cele y vamos a ver a la madre de todas las cláusulas una cláusula
de la sentencia SELECT que si no existiera no tendría sentido nada del lenguaje de base de datos.
Nos referimos a la sentencia wears a la cláusula Wear la cláusula Wear es la que nos va a permitir filtrar
nuestros datos de consulta.
Vamos a ver cómo funciona.
Nosotros lo último que habíamos dejado en nuestra es nuestro panel de consulta era un CD de nuestro
clima Ibid de la tabla clientes.
Ahora vamos a agregarle una nueva cláusula a continuación el orden siempre tiene que ser respetado siempre
comienza con Cele el nombre de los campos.
La cláusula fueron de donde provienen los campos y luego a continuación viene la sentencia la cláusula
Wear fue.
Por ejemplo CLI aided sea mayor a 20 a 10 perdón fíjense cómo ahora sólo me ha traído los Eiriz mayores
a 10.
No es condición necesaria que la cláusula Wear haga mención a un campo que nosotros tenemos en la lista
de valores podríamos vamos a verlo en otra tabla o en esta misma.
Vamos a ver cómo nosotros podemos usar aquí un campo en nuestra cláusula Wear que no ha sido incluido
en nuestra lista de campos por ejemplo que razón social sea mayor a la letra no tiene mucho sentido
esto pero es para mostrar nos trae todos porque porque todos tienen al menos un texto más complejo que
una simple letra.
Esto es para simplemente no tiene sentido la consulta pero es para que ustedes vean como yo tengo independencia
en mi cláusula wear con respecto a mi lista de campos a mostrar no hace falta incluirlo yo puedo aquí
vamos a tomar otra tabla la tabla productos por ejemplo vamos a borrar nuestra consulta y vamos a decirle
que traiga
la columna descripción creo que se llamaba así.
Vamos a ver si Prot descripción que me traiga todas las descripciones de productos de la Tabla Productos
donde por ejemplo nuestro precio sea mayor a cero y me trae todos los productos.
Todas las descripciones de los productos vamos a ver los datos.
Fíjense que hay una columna de.
No todos tienen precio.
Solo algunos tienen precio.
Por ejemplo este Energizer a 27.
Vamos a buscarlo para ver que es cierto
vamos a ordenarme permite hacer esto el G10 se huele.
Hago click en la columna y me ordenan los datos.
Vamos rápidamente a buscar Energizer a 27.
Se dan cuenta.
Esto es muy potente y vamos a ver que no queda ahí la cosa porque qué pasa si vamos a agregar un par
de campos más pero Deivid
precio vamos a ejecutarlo.
Aquí tenemos para que ustedes puedan ver que el precio no he mentido.
Solamente me trae los productos que tienen precio mayor a cero.
Ahora supongamos que nosotros queremos hacer una consulta compuesta no solo por una condición si no
que tenemos varias condiciones.
Entonces nosotros queremos vamos a la vez sólo para este caso voy a poner un asterisco.
Vamos a ver todos los campos
ok.
Vamos a hacer así el G10 se cuela me permite no hace falta que esté todo en una sola línea en el Jaydy
ese vuelo lo va a interpretar bien y lo va a ejecutar sin problemas.
Ahora yo quiero algo más complejo quiero que me traiga todos los productos cuyo precio sea mayor a cero
que tengan estátus cero
y cómo uno de esos dos.
Esas dos condiciones.
Nosotros vamos a usar los operadores lógicos and y or si nosotros tenemos que la condición es que tiene
que ser mayor a cero y además tiene que tener un estatus de cero.
Vamos a tener que usare Landa
esto sería traeme todos los campos de quién.
De productos Werdum donde donde el precio sea mayor a cero y el campo produce Status
Estatus sea igual a cero.
Lo ejecutamos y fíjense en milisegundos como me trajo sin que sean estamos ojo que estamos haciendo
consultas de dos campos que no tienen nada que ver con los índices no son índices y me los ha traído
sin ningún problema y no es que tenemos dos registros tenemos 7200 registros.
Fíjense lo veloz que opera este motor de base de datos.
Bueno aquí tenemos ya nuestros productos filtrados con estátus cero y el precio pero vamos a hacerlo
más complejo todavía y para eso vamos a tener que usar los paréntesis porque recuérdense en las ecuaciones
matemáticas cuando nosotros creemos que primero evalué una condición la metemos entre paréntesis y le
va a dar prioridad.
Yo quiero que me traiga los productos que tengan precio mayor a cero y que me traigan los productos
cuyo estatus sea igual a cero o los productos cuyo estatus sea igual a uno y el proveedor
sea igual.
Me la voy a jugar diciendo No sé si esto va a qué es lo que va a hacer esto eso la consulta quiere que
traigamos sí o sí los precios que sean mayor a cero eso no se negocia y además que lo filtre por los
productos cuyo estatus sea igual a cero o que no sea igual a cero que sea igual a uno pero que pertenezcan
al proveedor 97 una cosa o la otra.
Vamos a ejecutar nos perdones Prov hoy día no es Prov tiene razón me equivoqué.
Ahí está bueno.
Fíjense cumplió las dos condiciones solamente cuando encontró que el estatus era uno se aseguró que
el proveedor sea 97.
No me trajo el estatus el estatus uno de otro proveedor no me trajo el estatus uno del proveedor 41
o del 110 solamente incluyo los productos de estratos 1 cuando el proveedor era 97 para el resto solamente
me trajo de cualquier proveedor pero el estatus tiene que ser cero.
Se entiende esto.
Esto no tiene límites.
Podrían escribir una cláusula Wer del tamaño de un libro agregándole condiciones parentesis y que cuál
es la idea.
Cuál es la idea del lenguaje se cuelen si la idea del lenguaje se cuele es que ustedes con una sola
escritura de una sentencia sea simple o compleja puedan obtener el cien por cien de la información que
necesitan.
No tengan que sobre esa información volver a filtrar nuevamente.
La idea es que con un solo disparo ya tengan todo lo que necesiten les envían todo esto al motor el
motor lo resuelve a un muy bajo nivel.
Estamos hablando de código máquina y les devuelven los registros que ustedes necesitan sea cual sea
la unión de tablas las condiciones lo quiero ordenado los quiero agrupados vamos todo eso lo vamos a
ir aprendiendo a lo largo de estas clases.
Pero fíjense qué potente que es la cláusula Wear no sólo funciona con datos numéricos.
Vamos a ver luego todos los todos los chiches que nos da el lenguaje SQL para trabajar con descripciones
con nombres con fechas y a ver si tenemos alguna con fecha.
Quiero que ustedes vean bueno aquí tenemos vamos a colocar todas las columnas tenemos una tabla que
nuestra tabla ventas donde manejamos fechas.
Vamos a hacer un pequeño ejercicio vamos a vamos a traer de nuestra tabla ventas por ejemplo nos interesa
la fecha no sé si está así escrito sin ventas y bajo fecha ventas el número de cliente y vamos a colocar
un campo más que es el total
from Verduga vamos a probar que esto funciona funciona perfecto me traen mis tres campos.
Todavía no tengo claúsula Wear y ahora vamos a colocar una cláusula Wear donde yo quiero
los registros de venta de la fecha que sea superior.
Vamos a ver qué fechas tenemos al 3 de enero ok y vamos a poner ventas fecha cuando sea mayor las fechas
van con comilla simple siempre en mi ciclo las fechas van con comilla simple y van con el año Hyon el
mes y en el día siempre Este es el formato de fecha de mi ciclo lo tienen que aprender porque no va
ni él ni el día barra al mes barre el año no se los va a rebotar.
Este es el único formato posible de fecha cuando el ejecuto fijense me filtró a partir del 4 en adelante
y yo podría hacerlo más compuesta yo puedo decirle que la fecha sea mayor a tres y la ventas fecha.
Vuelvo a repetir el campo no hay problema sea menor a pero al día 10
fíjense día 4 5 6 8 9 y se terminó la historia.
Y a esto que me trae le podría agregar otras cosas.
Por ejemplo y además de eso que el cliente
sea distinto de uno el mayor y el menor es lo que usamos para indicar que un valor sea diferente.
Nuestro cliente 1 es consumidor final ya lo conocemos no necesitamos las ventas de los consumidores
finales queremos las ventas de los clientes que tienen un Eiriz registrado y una ficha de cliente para
poder cobrarles para poder llamarlos para poder hacer lo que nosotros queramos lo ejecutamos y fíjense
que mi campo ventas Clea y Dib ya no es uno me ha filtrado y me sigue filtrando y yo ahora quiero además
de esto y le doy Enter.
Que me traiga no solo las ventas entre el día 4 y 9 de enero y de mis clientes que no sean consumidor
final sino que también quiero saber solamente las ventas que superen los 1000 pesos o mil dólares o
en qué esté expresado la moneda de acuerdo a cómo Uds. la han interpretado
simplemente mayor a mil
fijense es un pestañear es algo que no es algo buenísimo es algo con lo que van a trabajar y se van
a encantar y tengo 54 registros Fíjense aquí me dice tres columnas 54 registros y yo lo podría ir todavía
complejizando más pero esto jueguen ustedes.
Les pido que empiecen a usar CL fueron Wer con los con los operadores aun y con las tablas que tienen
empiecen a practicar porque esto se va a ir a complejizando y tenemos que ir afianzando conocimientos.
Por supuesto también pueden preguntarme sin ningún problema fíjense estos 54 registros ahora y cuántos
registros tenemos una ventas Thaçi 7200 registros de ventas 7200 registros de venta.
Vamos a limpiar nuestro filtro.
Fíjense la rapidez de esto con la rapidez con la que ha hecho esto 7200 registros de ventas y es un
pestañear y ya la consulta cuando lo hago por segunda vez como ya lo había hecho me demora nada.
Vamos a ver cuánto demoró la anterior.
Vamos a agrandará un poquito esto.
La anterior de 54 registros me tardó 15 milisegundos pero no tardó 15 milisegundos en mostrarme 54 registros
tardó 15 milisegundos en recorrer 7200 registros y filtrar solamente por los que yo necesitaba.
Fíjense lo potente que es esto así que vamos a continuar en la clase que viene mucho más metiéndonos
en el mundo de la sentencia C.L y vamos a ver cómo se va enriqueciendo con operadores con cláusulas
y con condiciones que vamos a ir metiendo en nuestra gran estrella sentencia del lenguaje se cuele nos
vemos en la clase que viene.