Transcripciones
1. SQL 1 introducción: Hola, soy Peter. En este curso vamos a
repasar secuela y cómo extraer datos o sacar
datos de una base de datos, las empresas están recopilando
más datos sobre los clientes, sobre su propio producto y casi el mundo en general. Y cada vez es más útil poder
saber cómo obtener
esos datos y cómo construir informes
y
tomar decisiones significativas
a partir de esos datos. Ya no necesitas
ser ingeniero de datos para
encontrarte con una base de datos SQL, saber cómo crear
tus propios informes, puede ayudarte a
responder preguntas, entender a tus clientes y producto mejor y
avanzar en tu carrera. También ayuda a entender
mejor cómo funcionan los sistemas
informáticos y dejar que no es,
no es posible en el mundo de la
programación. Juntos trabajaremos a través de
algunos ejemplos que involucran una heladería que tiene muchas preguntas
sobre sus datos. No necesitas ninguna experiencia previa en
programación
para realizar este curso. Sql en sí está diseñado
para ser bastante legible, por lo que debería ser al menos una buena introducción
a la programación. También es una excelente manera de
comenzar si estás
buscando convertirte en un analista de
datos o un sitio. Este curso cubrirá la consulta de selección de
secuencia, que es solo para obtener
información de una base de datos. No cubriremos
cómo ingresar datos, cómo eliminar datos
o cómo alterarlos. Sin embargo,
trabajaremos sobre cómo elaborar datos, cómo analizarlos, cómo filtrarlos y
cómo relacionarlos con otros datos. También en la base de datos, he estado trabajando en y bases de datos
basadas en SQL desde 2010, ya sea en mis propios proyectos, han ido más lejos en
mi carrera, mi trabajo, o simplemente para tomar decisiones
basadas en datos. Hay muchos lenguajes de
programación basados en SQL
diferentes por ahí. Una vez que sabes qué, es
bastante fácil hacer la transición que conecta uno y solo van
a ser algunas palabras clave son algunas gravantes, vamos a diferentes si usas el tablero o
servidores de Microsoft iguales, la ejecución de consulta real
va a ser la misma o muy
cercana a la misma. Emocionado por estar
impartiendo este curso. Y espero verte
en el siguiente video.
2. SQL 2 Select: Las bases de datos sql son básicamente
como hojas Excel
muy rápidas, muy grandes. Tienes diferentes columnas
que definen lo que puede entrar en la base de datos y luego se levantan que pueblan esas columnas
con datos reales. También puede tener
varias tablas en una base de datos al igual que Excel puede tener varias hojas
en una hoja de trabajo. Entonces, para nuestra primera consulta, vamos a estar
obteniendo todas las filas y todas las columnas de
una tabla específica. Así que vayamos
al emulador y puedes encontrar esto en
este sitio web aquí. También ser un enlace en
la descripción en caso de que no
quieras introducirlo. Entonces vamos a
comenzar con el Queer que ya está poblado ahí, seleccionar estrella o
asterisco de las tiendas. Entonces cuando ejecutemos
esto, va a devolver todas las columnas de la tabla de tiendas junto con todas las filas que
están en esa tabla. Entonces, diseccionemos esto
y repasemos cada parte. Select es la palabra clave que estamos usando para extraer
u obtener datos de la base de datos si quisiéramos
eliminar o insertar
o alterar datos, aquellos que tienen
diferentes palabras clave. Así que mientras estemos
empezando con select, vamos a estar obteniendo datos,
la base de datos y no
tocando Lo que hay en ella, no
estamos cambiando lo que hay
en la base de datos. Estrella o asterisco aquí, generalmente llamado estrella en la
programación es un comodín. Significa agarrar todo. Entonces esto suele ser
las columnas de aquí, así que solo estamos agarrando
todas las columnas. De es la otra palabra clave
que nos permite saber dónde están estos datos o de qué tabla
queremos tomarlos? Y tiendas es nuestro nombre de mesa. Entonces esta tabla de aquí
se llama tiendas. Así que estamos obteniendo todas
las filas y todas las columnas
de la tabla de tiendas. Digamos que solo queríamos columnas
específicas de la manera esto se ve un poco demasiado. Esto lo podemos simplificar. Entonces digamos que solo queremos estos, la calle, ciudad y estado. Podemos poner esos nombres de tres
columnas en lugar del comodín que separa
cada una con una coma. Y entonces podemos ejecutar eso. Ahora nos sale mucho más limpio
de un datum y solo estamos viendo la información
que queremos sintácticamente, estos suelen estar
separados en una nueva línea, pero eso no es necesario para ejecutarse. Eso es solo hacer que se vea bien
cambiar la mesa. Sólo vamos
a reemplazar esto. Si recargamos la página, veremos
las tres tablas que se encuentran en el inventario y sabores de
esta tienda de base de datos. Entonces, en lugar de seleccionar
estrella de las tiendas, echemos un vistazo a los sabores. Aquí podemos ver que
tenemos nuestros tres sabores de nuestra mesa de tiendas, y podemos volver a las tiendas. Echa un vistazo a esa tabla
cerca del final de este curso, vamos a repasar cómo combinar
datos de dos tablas. Pero por ahora sólo
trabajaremos de uno a la vez. Algunas cosas secundarias a tener en cuenta aquí, sql no diferencia entre mayúsculas y minúsculas, así que esto podría ser minúsculas y seguiría
funcionando bien. O la mesa podría estar toda en mayúscula y
funcionaría bien. Por lo general, los
propios comandos SQL están en mayúsculas y las
tablas y columnas están en minúsculas solo para
que sea más fácil de leer. Entonces, usando lo que has aprendido para crear una consulta que seleccione todos los sabores y muestre el nombre del sabor y la
fecha en que fueron creados. Voy a hacer una pausa por unos segundos. Sigue adelante y pausa el video ahora mismo y para darte
algo de tiempo para volver a construir. Bien, sigamos adelante y
construyamos esa consulta juntos. Entonces normalmente si no sé el nombre de la columna o no estoy
seguro de cómo se escribe. Voy a empezar
con el comodín e ir a la mesa de la derecha. Así que vamos a seleccionar estrella de sabores y TIC que el nombre o título de El sabor se llama Nombre y
se acaba de crear. Entonces voy a
cambiarlos a favor de los voy a
cambiar. Así que vamos a hacer nombre coma creado. Sigamos adelante y ejecutemos eso. Y luego tenemos
nuestros tres sabores y las tres fechas
que fueron creadas.
3. SQL 3 DONDE: Entonces, obtener datos de una
tabla es genial, pero digamos que solo necesitas
algunas de esas filas para aparecer. ¿Cómo lo filtrarías? Ahí es donde la
cláusula where viene muy bien. Entonces aquí es donde
puedes filtrar
operadores matemáticos
específicos son matemáticas
básicas que
puedes ponerlo ahí. Entonces, por ejemplo, si estamos
mirando la mesa de nuestras tiendas, hay muchas tiendas
diferentes allí. Digamos que solo queremos conseguir las tiendas con mayores ganancias. Podemos filtrar donde el beneficio es
mayor que un cierto número. Entonces hagamos 150 mil. Solo conseguimos las tres tiendas
que son de alto beneficio. El tipo de filtrado
que hagas depende los datos en la columna
que estés filtrando. Entonces como este es un número, puedo usar mayor que, mayor o igual a. O incluso podría hacer tal vez historias de bajo beneficio que sean menores
o iguales a 150 mil. También podría verificar las condiciones
exactas donde la ganancia es exactamente 8,000. Y entonces esto es filtrar
basado en un número. Pasemos a una
cadena o un trozo de texto. A veces se les
llama cuerdas. Entonces tal vez echemos un
vistazo a los estados. Podría usar el operador
igual y obtener todos los estados
en Pensilvania. Pero normalmente cuando estoy
trabajando con textos, me gusta usar es en cambio. Entonces, ¿esto es
lo mismo que igual? Simplemente se lee más fácilmente si estás usando textos
y subnúmeros. Si quiero
lo contrario, puedo
encenderme ahí para poder
conseguir todas las tiendas donde el estado no es Pennsylvania en este caso,
solo está Nueva York. Normalmente al
trabajar con textos, solía filtrar mis datos. Esto me permite encontrar
subcadenas dentro de la
propia cadena o buscar palabras clave
específicas
dentro de un fragmento de texto. Entonces digamos que quiero que todos
los estados que sean como la luz principal de la calle
me permita buscar una subcadena
o una palabra dentro de un trozo de texto para que pueda obtener todas las
calles que están en el norte. Cómo funciona esto es que está buscando primera cadena, así que
las comillas simples, hágame saber que
hay un trozo de texto o cadena ahí, entonces el signo de porcentaje es
como el comodín para como, solo como como asterisco
es el comodín para seleccionar el
signo de porcentaje significa que cualquier cosa puede ir aquí cualquier número de veces hasta que encuentres la
cadena de bucles norte, y luego puede terminar
con lo que quieras. Si quieres que diga
final con Avenida Norte, te quitarías ese letrero de porcentaje al final
y luego tiene que terminar en Avenida
Norte o
digamos que queremos comenzar con 100 y no nos
importa que calle lo es. Bosnia busca donde comienza con 100 y termina
con cualquier otra cosa. Entonces, hasta ahora hemos
repasado los números y hemos repasado el texto. También echemos un vistazo a
las fechas y los valores nulos. Entonces echemos un
vistazo a todos los datos. Para ello, voy a
comentar mi cláusula where. Entonces, al poner dos
guiones delante de
él, simplemente le dice al compilador o a la base de datos que
ignoren esa línea. Entonces ignorando mi
cláusula where me vuelve todos los datos y
ahora puedo mirarlos. Echemos un vistazo a todas las tiendas que están abiertas
desde 2019. Entonces voy a filtrar donde mi fecha de apertura es
mayor a 2019. Ahora tenemos que escoger una fecha
exacta en 2019. Entonces voy a hacer Twain 18, 1
de enero, haciendo año, mes día. Te veré. Han sido
tres historias que se abrieron desde enero. Las fechas funcionan mucho como los números. Por lo que también puedo hacer
mayor o igual a esta fecha. ¿Bien? Haz lo contrario. Y puedo decir donde la
fecha de apertura es menor que esa fecha. Entonces estas son mis primeras
tiendas que abrí. La otra cosa que
podrías haber notado es este valor nulo en algunas de estas fechas puede estar en cualquier tipo de columna.
No tiene que ser fechas. Me costó los números están gravados. Y significa,
significa que
no hay datos en esa fila de
que esté vacía. Va a ser muy
útil a veces las bases de datos no
eliminan información, sino que inferirán la eliminación
en función de lo que es nulo. Entonces, por ejemplo, en lugar de borrar la calle que
cerró en Queens, estoy asumiendo que esta puerta está abierta si no la
tiene fecha de cierre. Entonces echemos un vistazo donde
todas mis tiendas son nulas. Y null debería ser, oh perdón, estamos cerrados es nulo. Entonces estas son todas las
tiendas que se abren. Y digamos que quiero
encontrar todas mis tiendas de ropa. Voy a decir
donde no están jalan todavía
me darán Y1 cerrar tienda. Bien, hasta ahora hemos
repasado mucho. Hemos ido a
filtrar números, hemos repasado
cómo filtrar fechas, y hemos repasado cómo
filtrar texto o cadenas. La pieza final que
vamos a lanzar aquí es agregar dos filtros
a la misma consulta. Entonces, repasemos cómo encontrar todas las
tiendas con altas ganancias en Nueva York. Voy a empezar
filtrando donde el estado es igual a Nueva York. Para agregar otro filtro a esto, voy a agregar, y luego puedo agregar un segundo filtro igual
que lo haría con el primero. Entonces en este caso,
voy a comprobar qué beneficio es mayor a 100 mil. Y puedo agregar tantos
filtros a esto como quiera. También puedo agregar otro
filtro para verificar donde la fecha de cierre no es nula. Es una buena regla general agregar siempre en
unas pocas condiciones, incluso si es posible que no las
necesites para
asegurarte de que estás
filtrando los datos correctamente. Entonces para este video, el reto será
enlistar todas las tiendas que se
han abierto en
Nueva York desde 2020. Haz una pausa aquí para darte un par de minutos
para averiguarlo. Entonces vamos a filtrar primero donde el estado es
igual a Nueva York. Y también vamos
a filtrar o la
fecha de apertura mayor a 2020, Y sólo tenemos que
comenzar el 1 de enero. En realidad, queremos
los del 1 de enero. Entonces vamos a hacer mayor
o igual a y conseguimos un 118 es East River, Filadelfia, Nueva
York, rodilla de crack libre. En realidad es un pueblo
de Nueva York. Es diminuta.
4. Tipos de datos SQL 4: Antes de continuar,
hay un tipo de datos más quiero repasar
y ese booleano, booleano son verdadero o falso.
Están encendidos o apagados. Son como interruptores de luz. En nuestra tabla de sabores, tenemos nuestra columna de bestsellers, y esta es una booleana. También a veces
se ve como uno o un cero, o uno es cierto. Cero es falso. Entonces para filtrar ahí, puedo seleccionar donde mi
best seller es uno. O también podría poner la
verdad aquí también. Los no bestsellers, puedo
filtrar donde es falso. También podría cambiar esto
a donde sea igual a cero. Entonces miles de millones son bastante simples, pero la forma
en que filtras en ellos parece un poco ocupada dependiendo de la manera
que prefieras. Fila. Cada columna se puede
filtrar de manera diferente
dependiendo del tipo
de datos que almacene. Y esto se define cuando los administradores de
su base de datos
configuran la base de datos. Si no está seguro de qué es un tipo de columna
específico, hay diferentes comandos
que puede ejecutar dentro SQL para obtener esa información
de la base de datos. Porque esta es una de las
cosas que va a variar dependiendo del idioma
específico en el que te encuentres. Esto también es algo
que alguna vez puedo recordar. Es algo que tengo que
buscar en Google cada vez. Y normalmente solo escribes Table info para el lenguaje SQL. Me gustaría Google
información de tabla para SQL light. Entonces obtuve este comando. Voy a cambiar esta parte por
mis sabores de mesa. Entonces consigo una mesa
sobre mi mesa. Entonces esta es la información
sobre los sabores de mesa. Aquí puedo ver los
diferentes nombres de columna en mi tabla de sabores. Puedo ver su tipo. Entero aquí es una
forma de programación de decir número. Texto significa texto o cadena. Esto también a veces puede
ser como un char n var. Y esa es solo una
forma más antigua de decir texto. Flotador es otro tipo de número. Entero tiene que ser un número entero donde un flotador puede ser un decimal. Tenemos nuestra cita y luego
también tenemos booleanos del que
acabamos de hablar. El último tema del que quiero
hablar en este video es el concepto de datos implícitos
o explícitos. Esto es muy
útil para tener en cuenta si estás experimentando
en una nueva base de datos y no estás muy seguro de lo que significan
las diferentes columnas o cómo obtener la fecha exacta. Uno. Los datos explícitos son datos que se
establecen claramente en el día. Entonces en nuestro ejemplo, si echamos
un vistazo a nuestra mesa de tiendas, podría
afirmarse explícitamente que el estado es Pensilvania
o Nueva York. No obstante, se da a
entender implícitamente que la tienda sigue abierta al no
tener una fecha de cierre. A veces, cómo
pensamos de los datos no es la mejor manera de
almacenarlos en una base de datos, por ejemplo ,
si la tienda, mientras que sería
bueno tener un booleano aquí, si la tienda está abierta o cerrada. También significaría que
había dos columnas que te decían lo mismo. Y así siempre
tenían que ser los mismos. Y si
alguna vez hay una diferencia, podría causar problemas que podrías sentir incorrectamente en tus
datos. Entonces es mejor tener
una columna y esas cosas también. Así que vamos a solo algo
a tener en cuenta. Espero que ayude mientras ustedes
exploran sus propias bases de datos.
5. SQL 5:6 Clasificación y agrupación: Hasta el momento hemos estado
trabajando en tablas que tienen muy pocas
filas en ellas, para que puedas
verlas todas en una sola pantalla. Rara vez es ese el
caso en la naturaleza con datos
reales importantes de los
que
hablamos en la introducción
a este video. Por lo general, las tablas
pueden tener miles, si no millones de filas en ellas. Entonces, obtener los datos que desea en la parte superior para que pueda
verlos es realmente útil y
ahí es donde ordenar o clasificar nuestros datos
va a ser útil. Entonces para hacer eso, después de
nuestra cláusula where, podemos ordenar nuestros datos
que han sido filtrados. Entonces, por ejemplo, echemos un
vistazo a todos nuestros sabores. Ahora bien, si quisiéramos ordenar
estos por su costo, eso es ordenar nuestros datos. Vamos a usar el sesgo de orden. Voy a decir que
ordene esta mesa. Y luego elijo una columna
específica por la
que quiero
ordenar la tabla. Así que voy a ordenar por
costo y por defecto, puedes ver que ya está
ordenado en orden ascendente, es
decir, los números se hacen
más grandes
a medida que bajes para cambiar eso u orden
descendente, puedo hacer DESC como mi atajo para decirle que
quiero esa columna en orden
descendente. Y ahora consigo el costo más alto primero y el costo más bajo último. Vea si podemos usar esto en la tabla de tiendas para enumerar
todas las tiendas en Nueva York, ordenándolas
primero por la tienda con
mayores ganancias y la
tienda con menor ganancia de Nueva York por último. Bien, construyamos
esa carrera juntos. Entonces primero echemos un vistazo a la mesa de
estas tiendas y no
vamos a
ordenar por nada. Entonces, seleccionemos
estrella de las tiendas. Tenemos nuestro estado y
tenemos nuestro beneficio. Entonces comencemos con nuestro filtro. Entonces vamos a filtrar donde el estado igual a Nueva York. Y normalmente
utilizo comillas simples. Pero eso da las
comillas dobles de A. Simplemente depende del
idioma en el que estés. Sql light puede usar ambos. Algunos solo prefieren
comillas simples o comillas dobles. Y ahora queremos ordenar
estos por el profeta, excepto que ese es el orden equivocado. Así que vamos a hacer
descendiendo para obtener primero las tiendas con
mayores ganancias y las tiendas más rentables duran. Ahora que podemos ordenar nuestros datos, Pasemos a
agrupar nuestros datos. La agrupación nos permite hacer
es, nos permite
combinar múltiples filas en una sola fila y agregar nuestros datos para obtener resúmenes de la información
dentro de nuestra base de datos. Esto es extremadamente útil
en grandes bases de datos. Entonces, agrupemos nuestros
estados y obtengamos las ganancias e información del número de tiendas
en cada estado. Entonces para hacer eso, primero solo
obtengamos algunos datos de nuestros estados. Entonces vamos a agrupar nuestros datos
por la columna de estado. Ahora, ahora mismo, si
solo lo ejecutamos, cómo es, solo
veremos las dos filas y todas
las columnas que hay en ellas. Esto es simplemente escoger la primera
fila de esos dos grupos. Si realmente
queremos resumir datos, necesitamos usar
palabras clave específicas en nuestra porción seleccionada. Entonces en vez de hacer estrella, primero
vamos a enumerar el estado. Es ahora que podemos ver
que tenemos dos estados. Bien, entonces obtengamos el recuento del número de
tiendas en cada estado. Entonces para hacer eso, vamos a
contar el número de tiendas. Ahora para hacer el número de
tiendas podría pasar en el ID y eso
contaría el único, eso contaría el
número de IDs en cada fila. O normalmente solo hago el
comodín porque solo
queremos contar cuántas estrellas hay y eso
suele ser más fácil. Por último, para obtener el beneficio, necesitamos sumar
todas nuestras ganancias. Entonces vamos a llamar a
la función Suma. Entonces esta de aquí era
la función de conteo, así que cuenta el número de
cosas que le das. Nuestra función SUM va a sumar o sumar toda la
columna que le demos. O va a sumar todas las filas de
la columna que obtenemos. Entonces le vamos a dar
la columna de ganancias. Obtenemos nuestro estado, nuestro conteo y nuestro beneficio para cada estado. Una
función más nifty para usar es la función promedio o AVG. Y eso también nos va a
dar el promedio para el beneficio en cada tienda. Ahora bien, estos datos se
ven un poco desordenados. Estas columnas de aquí arriba no son
tan agradables de ver. Entonces podemos dar
nombres a estas columnas simplemente declarando
su nombre aquí. Entonces nuestro nombre va a mostrar como el número de tiendas
o tal vez solo el conteo. Y eso se ve un poco más limpio. Mientras que nuestro sol puede ser la suma y nuestro promedio puede
aparecer como promedio. Agregar nombres de columna solo hace que los datos se vean un
poco más limpios cuando
estás en el informe. Y también lo hace mucho más fácil si
vuelves a él para saber exactamente qué información estás tratando de sacar
en ciertos puntos. Una cosa a tener en cuenta es que no
puedes usar espacios aquí. Entonces no podría decir ganancia total. Eso va a arrojar un error. Entonces voy a usar guiones bajos
para sortear eso. O si realmente quieres espacios, puedes hacer comillas simples y
eso te dará un espacio. Normalmente, sin embargo,
en mi experiencia, verás un guión bajo
usado en su lugar. Y finalmente, puedo combinar esto con otras consultas
para poder lanzar un where entre mi pulgar y grupo por una orden para filtrar los datos
antes de que se agregen. Así que sólo pude
mirar mis tiendas donde la ganancia
está por encima de 100 mil. Simplemente puedo obtener el conteo y beneficio
total y promedio de
apenas mi tienda de alta recaudación, en este caso, dos en cada estado. Mientras que cuando no
tenemos ese filtro, podemos ver que
hay tres estados, tres tiendas en Nueva York. Este también sería un
gran lugar para filtrar nuestras tiendas cerradas
así puedo decir donde la fecha más cercana es nula. Entonces ahora solo estamos mirando tiendas
abiertas y obtenemos su
calendario y ganancias. Así que repasamos bastante
en este video, repasamos cómo
ordenar nuestros datos usando la cláusula order by. También aprenderemos
a agregar o
agrupar nuestros datos
usando la
cláusula group by también aprenderemos sobre los diferentes órdenes en los
que estos pueden ocurrir, así
como
las diferentes funciones que podemos llamar dentro de nuestra área de Columna seleccionada.
6. SQL 7: Hasta ahora hemos cubierto
bastante. Hemos repasado cómo sacar columnas específicas
de nuestras bases de datos, cómo filtrar los datos
dentro de cada tabla, cómo ordenarlos y
cómo agregar nuestros datos para obtener resúmenes
de lo que hay dentro. En los próximos videos, vamos a cambiar para saber tratar con múltiples tablas. Así que ahora es un buen momento
para hacer una pausa si te sientes incómodo con los temas que ya
hemos repasado. Al repetir algunos videos, o simplemente probar las consultas por tu cuenta,
experimenta un poco más. Antes de continuar, estamos
trabajando en múltiples tablas, continúa construyendo sobre lo que ya
hemos repasado, especialmente vamos a usar la cláusula where y
la cláusula group by. Así que asegúrate de tener
un fuerte entendimiento de esos antes de
continuar adelante. Entonces las bases de datos SQL utilizan
relaciones para conectar datos. Las relaciones son cuando una fila hace referencia a otra fila
y a una tabla diferente. Para ello, vamos a ir
a la tabla de inventario. Por lo que la tabla de inventario
tiene tres columnas en ella. Echemos un vistazo a eso ahora. Consigamos todo
del inventario. Entonces esto tiene muchas filas
diferentes en él, pero solo nos
interesan las tres columnas. Entonces primero tenemos el ID de la
tienda, el identificador de sabor,
y el ID de la tienda del campamento es realidad el ID de la
tienda en las mesas de las tiendas. Si vamos a tiendas,
encontremos Store ID1. Así que la tienda ID1 es nuestra 100 Pine Street en
Harrisburg, pensilvania. Volviendo al inventario, podemos hacer que la segunda columna haga
referencia a un sabor específico. Entonces, si vamos a
nuestra mesa de sabores, descubramos qué es el
sabor número uno. Sabor ID1 es vainilla vista. Y volviendo al inventario, podemos ver que
hay diez vistas de vainilla en nuestra
heladería Harrisburg, pero no es tan
conveniente tener que usar el ID de tienda para filtrar
la tabla de inventario. Entonces, en cambio, lo que
podemos hacer es unir estas dos mesas juntas sobre esas relaciones específicas. Conectemos a aquellos que
usan la cláusula join, esta un poco larga
y es difícil de leer. Así que unamos esto a
nuestra mesa de sabores. Voy a usar la
cláusula join aquí y
voy a pasar en qué tabla quiero unirme. Entonces en este caso son sabores. Ahora podemos correr eso y
trayendo muchos resultados diferentes. Eso es porque no le
hemos dicho a qué D unirme. Algunos soldados se unieron
con sabores. Ahora necesitamos definir
esta relación. Entonces vamos a decir donde el identificador de sabor igual
al id es mucho más corto. Ahora, queremos donde
la tabla de sabor, donde el identificador
de sabor de nuestro inventario es igual a ID en nuestra mesa de
dedos. Aquí es un poco más fácil de leer. Ahora puedo ver que la tienda
número uno es bajo de merienda. Ver tienda número
tres se está agotando en Vanilla vista en
contraposición al sabor ID1. Saliendo de lo que aprendimos
en el último video, vea si puede agregar estos
datos y obtener un resumen de cuántos sabores hay en stock en
toda la compañía. Entonces, ¿cuántos
deseos de Villanova hay? ¿Cuántos chocolates? ¿Cuál es la camioneta en casa? Cuantas cuidas de chocolate
o están en stock y cuántas tartas de pacana hay en stock o cruzan por
todas las tiendas. Continuando con nuestro conjunto para
comenzar a agregar nuestros datos. Vamos a
desagruparlo por el id Ahora también podemos agruparlo por
el ID de sabor del vuelo. Realmente no importa.
Ambos
volverán igual porque
ambos son básicamente los mismos. Pero esto
todavía no nos
da nuestro recuento porque
seguimos seleccionando estrella. Así que vamos a obtener el
nombre de nuestro sabor. Y vamos a contar
cuántas filas hay, sólo para asegurarnos de que estamos
consiguiendo algo bueno. Entonces, hasta ahora vemos que tenemos nuestros tres
sabores y tenemos cuatro
líneas de inventario o inventario para cada sabor. Ahora tomemos la suma
del conteo para obtener
cuántos hay en stock en toda
la tienda. Por lo que podemos ver en
esta mesa que son pastel de
pacana se está agotando. Entonces probablemente deberíamos
pedir un poco más.
7. SQL 8 Alias: En este video, vamos
a repasar cómo unir tres mesas juntas
en lugar de solo dos. Entonces, al final de este
video, vamos a saber en qué tiendas se están
ejecutando, sabores, qué sabores se están agotando y qué dirección necesitamos
para enviar esos sabores también. Así que para empezar, vamos a tomar nuestra información
de
dirección de las diferentes tiendas. Tenga nuestras tiendas aquí desde, unámoslas en el inventario. Ahora podemos ver que tenemos nuestras tiendas repetidas
varias veces. Eso es porque por
cada fila en tiendas hay tres o cuatro
en nuestra tabla de inventario. En realidad va a
obtener una combinación de todas esas filas combinadas. Este es un
detalle importante a tener en cuenta. Entonces, si tuviéramos que
hacer esto conjunto y luego tratar de resumir nuestras ganancias, tendríamos ganancias enormemente
enormes, que se verían realmente geniales pero última instancia
serían inexactas. Eso es porque
cada vez que estamos uniendo mesas, es encontrar coincidencias. Y por cada partido
crea una nueva fila. Y estamos consiguiendo esas filas. Lo que estamos viendo
son esos partidos. Entonces por cada partido
que nos movemos. Ahora, vamos a filtrar esto para asegurarnos de que solo estamos
recibiendo nuestras tiendas abiertas. Y agreguemos otro
filtro para simplemente obtener los sabores que se están
agotando en el inventario. Entonces vamos a donde el
conteo es menor a cinco. Entonces solo tenemos unas
pocas tiendas que
sabemos que necesitamos para
enviar nuevos sabores. Ahora aquí es donde nos
vamos a encontrar con un problema. Si intentáramos unirnos de nuevo aquí nos encontraríamos con un problema. Si intentamos agregar otro
join a nuestra tabla de sabores. Cuando definimos la relación, vamos a encontrarnos con
un problema donde tenemos múltiples columnas llamadas id ahora. Entonces no pude, así que si lo hice donde flavor id es igual a id, vamos a obtener un error. Y eso es porque
la base de datos no sabe a qué columna de ID nos referimos. Tenemos que especificarlo más. Y para ello,
vamos a usar el mismo truco que usamos
anteriormente con la nomenclatura de columnas. Entonces vamos a agregar
alias a estas tablas. Ahora bien, los alias solo
significan que estamos definiendo un atajo o un
nombre abreviado para estas tablas. Podríamos escribir el nombre de
la tabla y luego un punto y luego especificar
qué movimiento de columna. Pero hay una
manera más rápida de hacerlo y
eso es agregar alias
a nuestras tablas. Entonces así como agregamos alias a nuestros nombres de columna,
vamos a usar S. Y luego voy a
hacer una S para tiendas, complemento para mi inventario
y llamarlo yo, y luego para mis sabores,
voy a llamarlo f. Normalmente la cultura
en secuela es que tu alias es una
letra para una mesa, tal vez unas pocas si
tienes algunas repeticiones, traté de mantenerlo 1-3 letras
solo para que sea agradable y corto. Algunos idiomas no
necesitan el ácido. Entonces solo puedes hacer desde las tiendas S y sabe que S es
el alias de Store. Adelante y
limpia el resto de esto. Voy a especificar
que cierra viniendo de tiendas y conteo
viene de inventario. Ahora estamos llegando a los
mismos datos y se ve un poco contaminado con columnas. Así que vamos a filtrar esto para simplemente obtener la
información que necesitamos. Entonces vamos a
necesitar el conteo. Así que vamos a agarrar el recuento de
inventario, Vamos a agarrar el sabor. Entonces tomemos el nombre del sabor, y luego
consigamos la dirección a la que necesitamos enviarlo. Entonces esta va a ser
la tienda Street, Store city y el store state. Sigamos adelante y ejecutemos eso. Aquí hay un reporte de
todos los sabores, su inventario que se está
agotando y a qué es lo que la actriz
necesita enviarlo. Esto desafía un poco más
avanzado que nuestros otros. Entonces, si
buscas un buen reto, ve si también puedes calcular
el costo que se necesitaría para recargar cada una de esas tiendas
respaldo a diez barriles cada una. Repositorio pocos segundos
mientras lo descubres. Bien, eso fue un reto
un poco
más complicado de lo que
suelen hacer. Realmente no hemos
hablado de usar las matemáticas dentro de nuestras declaraciones selectas, pero podemos colarlas ahí. Entonces vamos a
empezar por traer el costo del sabor y
olvidé mi coma
entre columnas ahí. Entonces ahora tenemos el costo
de cada sabor y queremos multiplicarlo
por cuantos cuantos sea que vaya a tomar para conseguir
que cuenten hasta diez. Toma nuestro costo y lo
vamos a multiplicar por diez menos el recuento de inventario. Limones entre paréntesis aquí, para decirle que haga los diez menos que cuento antes de que
lo multiplique por el costo. Así que sigamos adelante y ejecutemos
eso y podemos ver el costo de que se necesita para recargar cada uno de estos inventarios
respaldo a diez unidades, o tal vez queremos
llenarlo hasta 20 unidades. Échale un vistazo a eso.
8. SQL 9: A veces las tablas
no siempre tienen los datos que queremos
o esperamos en ellas. En este caso, unirse es
solo mostrarnos partidos. Eso es lo que está haciendo, lo que
se llama una unión interna. Entonces es mostrar
lo que hay en
nuestras dos mesas
que coinciden en ambas. Pero también puede ser agradable ver dónde faltan esos datos. Entonces sabemos si
falta algo o hay
que cuidar algo. En este caso,
vamos a querer hacer lo que se llama un join de izquierda. Normalmente me gusta pensar en
esto como un diagrama de Venn. A la izquierda, tengo mi primera
mesa en el círculo derecho, tengo mi segunda mesa
donde se superponen. Esa es una articulación normal. Entonces por eso se llama un join
interno porque muestra las dos tablas lo que
coincide en ambas tablas. Nuestro join izquierdo nos va
a mostrar todo en la tabla de la izquierda o la tabla original con
los datos que concuerde. Entonces echemos un
vistazo al formulario de número de tienda. Así que la tienda número cuatro
tiene cuatro sabores en ella. Pero si echamos un
vistazo a nuestra mesa de sabores, solo
tenemos tres sabores. Podemos ver el número de identificación
tres aquí falta. Lo que más probablemente
sucedió fue que había un sabor pero se
eliminó o descontinuó. Y en lugar de hacer un
descontinuado o eliminar una fecha, simplemente
eliminaron los
datos de la base de datos. Ahora no sabemos de
este sabor es, sin embargo, este misterioso sabor número tres no aparece cuando nos
unimos a nuestra tabla de inventario. Eso es porque no
tenemos sabor para ello. Entonces solo
nos está mostrando lo que coincide. Emparejando el sabor I
AD con la tabla de sabores. Entonces, para obtener todos los datos de
la coincidencia y preservar nuestra tabla izquierda o tabla de
inventario I y obtener toda la información en
ella con lo que coincide. Vamos a hacer un join left, y esto nos va a
mostrar ese sabor en ID3 y como eso
tiene un nombre antiguo. También puedes hacer una unión correcta, pero normalmente no lo
veo con tanta frecuencia,
así que no lo vamos a
cubrir en este curso. La preferencia es usar una
unión izquierda sobre una unión derecha. Es sólo lo inverso. Conservará la mesa derecha
en lugar de la mesa izquierda. También está lo que se llama uniones
externas si
te interesa eso y eso preservará
lo que hay en ambas tablas. Eso va un poco fuera
del alcance de este curso. Entonces vamos a
dejarlo solo con las uniones de izquierda.
9. ÍNDICE de SQL 10: Bien, enhorabuena, has llegado
al último video. Hemos repasado todos los conceptos básicos. Necesitas comenzar a generar
tus propios informes, empezar a jugar en SQL y comenzar a experimentar
con datos. Las bases de datos son realmente divertidas
y realmente emocionantes. Sé que suena un
poco raro, pero es genial ver cómo se almacenan
los datos y
cómo se relacionan con diferentes tablas
que podemos almacenar datos
tan complejos
como el comportamiento humano, quiero para salir con
algunas cositas más de información justo cuando te
preparas para trabajar en
tus propias bases de datos a diferencia de esta base de datos de prueba de
dados. Entonces el primero es seleccionar es seguro. Select no va a
insertar ni cambiar datos. Pero podría llevar mucho tiempo obtener los datos dependiendo de
cómo los estés ejecutando. Así que vamos a
hablar de unos pocos procedimientos de
seguridad para
asegurarnos de que no estás ralentizando la
base de datos y causando algún problema a
otra persona que esté en ella. Por lo general, la mayoría de las bases de datos
tendrán una copia de la base de datos que estás trabajando en informes
degenerados. Así que asegúrate de hablar con un administrador de
base de datos para ver si estás trabajando
en la base de datos real o en una copia de la misma. Por lo tanto, puede ejecutar
informes más grandes sin arriesgarse a ralentizar la
base de datos para otros comportamientos. Entonces hay dos cosas de las que
vamos a hablar para agilizar tus consultas. El primero va a estar limitando el número
de filas que se devuelven. Entonces, si sí echamos un
vistazo a nuestra tabla de inventario, porque esa es la
más larga con más número de filas. Tenemos muchas filas. Ahora bien, esta tiene
quizá diez o 12 filas. Pero cuando se trata de datos de
producción que
tienen millones de filas, hacer solo seleccionar estrella de
podría devolver muchas carreteras. Y si solo lo estás
haciendo para obtener los nombres de las columnas
como suelo hacer, eso es un desperdicio de procesamiento y podría arrojar
pendiente la base de datos. Entonces lo que suelo virar al final
del mío es un límite, y luego diez límite,
límite restringe el número
de filas devueltas a cuatro. Entonces, incluso si estás en
una base de datos más grande, esto sale mucho más rápido dependiendo de tu
lenguaje SQL y el
límite de sometimiento al final
podrías hacer los
cinco primeros y luego seleccionas la consulta. Esta es la luz, así que
no funciona de esa manera, funciona con límite de cinco en su lugar. Entonces el punto final
que voy a sacar a
colación es el uso de índices. Entonces mientras estamos
hablando de relaciones, esas relaciones son columnas
inespecíficas. Normalmente estas columnas
que son IDs, están indexadas, lo que significa que la base de datos
recurre a esta columna para
que sepa
encontrar rápidamente filas dentro de ella,
indexación, indexación y algo
que harán de antemano y se define columnas
inciertas, generalmente para las combinaciones,
todas estas van a ser indexadas, así que join debería ir
bastante rápido. Pero en tus cláusulas dónde es
donde podrías ralentizar. Si estás filtrando en una
columna que no está indexada, podría
parecer muy lenta. O si estás filtrando
para una coincidencia de texto, eso también podría ser muy lento. Entonces, si encuentras que una de tus
consultas se está ejecutando lenta, mira si hay otra manera de
obtener esa información sin filtrar
en esas columnas, podría encontrar que los datos que
deseas no son otra tabla. En cuyo caso
será más rápido unirse a la otra tabla y
filtrar en una columna que esté indexada en
lugar de pegarse con una tabla y filtrar en una columna que no esté indexada. Pero por lo general eso es en bases de datos
muy complejas es simplemente algo a tener en cuenta
a medida que continúas adelante. Definitivamente hablo con el administrador de tu
base de datos, hablo con las personas
de tu empresa por solo andar por ahí
en una base de datos para ver si tienen alguna
mejor práctica o advertencias antes de
continuar hacia adelante. Con eso. Eso es
todo lo que vamos a cubrir en este curso. Así que hemos repasado
cómo obtener datos, cómo filtrar datos, agrupar datos y cómo combinarlos en
diferentes tablas. Realmente espero que hayas
disfrutado esto, por favor avíseme si algo no tenía sentido en
los comentarios a continuación. Me encantaría
explicarlo más y mejorar estos videos para
que tenga sentido. Y puedes
jugar con los datos porque
realmente es algo divertido de hacer. Gracias por ver
y buena suerte en sus esfuerzos de Reporting. Si te ha resultado útil este curso, te
agradecería mucho que
lo dejaras una reseña que
ayude a otras personas encontrar este curso
para que ellos también puedan generar los
informes que necesitan.