Transcripciones
1. Descripción del curso: Hola y bienvenidos al curso
SQL start Pat. Mi nombre es Ran y
seré tu instructor. Trabajo en uno de los bancos más grandes del
Reino Unido como analista de datos y he diseñado este curso para darle una sólida
comprensión básica de SQL. SQL es un lenguaje de codificación que se utiliza con
bases de datos para recuperar, organizar y analizar datos. Y en este mundo tecnológico en constante
cambio, los datos se están volviendo cada vez más esenciales para muchos tipos de trabajo
diferentes. He diseñado este curso
con principiantes en mente, así que no se necesita
experiencia previa. Paso a paso, te hablaré a través de una serie de procesos, incluyendo la recuperación
y filtrado de datos usando simples comandos SQL Ordenar, agrupar y modificar datos para proporcionar información
poderosa, combinar tablas para
crear nuevos conjuntos y también manipular y agregar datos a tablas dentro de bases Este
curso rápido y enfocado es perfecto si tienes curiosidad sobre
SQL y lo que implica, o tal vez estás cambiando de
carrera y quieres una base de
conocimientos fundamentales de SQL, o, por
supuesto, es posible que solo
quieras aprender SQL por diversión
o incluso solo para comunicarte
con colegas expertos en tecnología Sea cual sea la razón
para querer aprender SQL, al
final de este curso, estará
escribiendo con confianza sus propias consultas, y tendrá un conocimiento
básico cómo funcionan las
bases
de datos relacionales
2. Introducción a SQL: Entonces, ¿qué es SQL? SQL significa lenguaje de consulta
estructurado. Es un lenguaje poderoso utilizado
para interactuar con bases de datos. Las bases de datos son como
almacenes digitales donde podemos almacenar, organizar y recuperar datos. SQL nos ayuda a hacer preguntas sobre esos datos y obtener respuestas
significativas. Déjame darte un ejemplo rápido. Imagina que estás administrando una
base de datos para una tienda en línea. Puede contener
tablas para los clientes, como sus nombres,
direcciones de correo electrónico y números de teléfono. También podría contener
tablas para tus pedidos. Entonces, qué compró cada cliente, cuándo lo compró y
cuánto gastó. Si quieres saber
qué cliente el
pedido más grande el mes
pasado o cuántos ingresos
obtuvimos la semana pasada, podrías usar SQL para
responder esas preguntas. Una buena analogía en la que me gusta
pensar es, si la base de datos es la biblioteca, SQL es como el bibliotecario Puedes hacer una solicitud y SQL recupera exactamente
lo que necesitas Todo lo que necesitas saber es
cómo hacer la pregunta, que es lo que vamos a estar
cubriendo en este curso. Una cosa a tener en cuenta sobre SQL a menudo
se conoce como SQL. Esto se debe a que
el nombre original para el lenguaje era SQL, pero tuvieron que cambiarlo
a SQL en un momento posterior. Entonces, si escuchas a alguien
hablar de SQL como lenguaje, están hablando de lenguaje de consulta
estructurado. Bueno, SQL es importante porque es una de las
formas más comunes de administrar datos, y casi todos los
negocios o aplicaciones que tratan con grandes cantidades de
información confían en él. Déjame darte algunos
ejemplos donde se usa SQL. Un uso muy común para
SQL es a través del comercio electrónico. Así que empresas como Amazon utilizan SQL para rastrear millones
de pedidos y productos. Otro ejemplo es
a través de las finanzas. Por lo que los bancos y las empresas de
inversión utilizan SQL para administrar transacciones
y cuentas. Un gran ejemplo de una plataforma utiliza mucha información son, por
supuesto, las redes sociales. Entonces plataformas como Instagram o Twitter almacenan datos sobre publicaciones, me gusta y seguidores
en bases de datos. Por supuesto, también está
el ejemplo de la atención sanitaria. Por lo tanto, SQL se puede utilizar para administrar registros de
pacientes y
citas de forma segura. El caso es, sin embargo,
SQL no tiene que
ser utilizado por un negocio
conglomerado masivo También puede ser utilizado por pequeñas empresas que
podrían usarlo para analizar tendencias de
ventas o incluso aficionados que lo utilizan para organizar proyectos
personales En un mundo tan impulsado por datos, siempre
habrá un uso para SQL. Ahora hablemos de
quién podría usar SQL. Entonces SQL no es solo para
programadores o expertos en tecnología. Lo categorizaría como uno de
los lenguajes de codificación más accesibles Puede ser utilizado por analistas de datos para encontrar tendencias e ideas de datos o especialistas en marketing que pueden usarlo para segmentar a los clientes
para campañas específicas Puede ser utilizado por los gerentes de
producto para analizar cómo las personas
usan las aplicaciones y los productos. Y, por supuesto,
los dueños de negocios que podrían querer realizar un seguimiento del rendimiento y
tomar decisiones basadas en datos. Incluso si eres nuevo en los datos, SQL es una habilidad que
puede diferenciarte. Es fácil aprender lo básico
e increíblemente versátil. Además, tiene una gran demanda. Muchas descripciones de trabajo enumeran SQL como una
habilidad imprescindible para los roles de datos.
3. Bases de datos relacionales: En esta lección exploraremos bases de datos
relacionales, una piedra angular de la gestión de datos en casi todas las industrias Aprenderás qué son, cómo organizan la información y por qué son tan potentes para almacenar y recuperar datos Ya sea que esté rastreando pedidos
en línea, registros de
pacientes o transacciones
financieras, las bases de datos
relacionales
mantienen todo estructurado, accesible
y seguro Entonces, ¿qué es una base de datos
relacional? Una base de datos relacional es un sistema que organiza
los datos en tablas, que se
parecen mucho a las hojas de cálculo que verías en Cada tabla contiene filas, que son
registros y columnas individuales, que representan atributos
o puntos de datos
específicos para
esos registros. Por ejemplo, la tabla de un cliente puede tener columnas para nombre, correo electrónico y número de teléfono. La magia de las bases de datos
relacionales radica en su capacidad
para conectar tablas En lugar de duplicar la
información en varios lugares, puede almacenarla
en tablas separadas y
vincularlas usando SQL Entonces, desglosemos
los componentes clave de una base de datos relacional Entonces primero,
tenemos nuestras mesas. La tienda de los datos reales. Entonces, cada mesa podría enfocarse en
una parte del negocio, como los clientes, los
productos o los pedidos. Lo que a menudo encontrarás dentro de estas tablas son claves primarias. Las claves primarias son un identificador
único para cada fila de una tabla. Por ejemplo, en la tabla de un
cliente, la columna de ID de cliente
asegura que no
haya dos clientes mezclados
porque tendrán un número único
asignado a su fila. Y este ID de cliente es una clave
principal por eso. Además de claves primarias, también
tenemos claves foráneas. Las claves foráneas son columnas en una tabla que hacen referencia a claves
primarias en otra. Por ejemplo, una
tabla de pedidos puede incluir ID de
cliente para vincular cada
pedido a un cliente específico. Un último componente clave de una base de datos relacional
son las relaciones Estos definen cómo se conectan
las tablas. tipos comunes de relaciones
incluyen uno a uno, donde un registro en la tabla A
coincide con un registro en la tabla B. También
tenemos uno a muchos donde un registro en tabla A podría coincidir con varios
registros en la tabla B. Un ejemplo, esto
podría ser que un cliente puede tener muchos pedidos. Por último, está la relación de muchos
a muchos. Aquí es donde
múltiples registros en la tabla A pueden relacionarse con
múltiples registros en la Tabla B, como estudiantes y cursos donde muchos estudiantes
pueden tomar muchos cursos. Entonces, ¿por qué las
bases de datos relacionales son tan utilizadas? En primer lugar, son
increíblemente eficientes. Las bases de datos relacionales
evitan la redundancia. En lugar de duplicar datos,
los almacena una vez y los vincula según
sea necesario usando SQL También son
increíblemente precisos. Al aplicar reglas de
integridad de datos, como requerir
claves primarias únicas, minimizan los errores También son
increíblemente escalables, por lo que estas bases de datos pueden
manejar pequeños conjuntos de datos, pero también pueden
escalar para administrar millones o incluso
miles de millones de registros. Y, por supuesto, son
increíblemente flexibles porque podemos usar SQL en ellos, y eso significa que podemos crear
los datos de formas infinitas, donde quieran un solo
registro o un informe complejo. Pensemos en un ejemplo del mundo
real. Imagine tienda de comercio electrónico. Una base de datos relacional podría
tener tres tablas clave, clientes para datos personales, pedidos para rastrear compras y productos para inventario Al conectar estas tablas, la tienda puede
responder rápidamente preguntas como, ¿
qué productos compró un
cliente el mes pasado o cuántos ingresos provienen de una categoría de producto
específica? Y por supuesto, podemos hacer
estas preguntas usando SQL. Entonces, para resumir, bases de datos
relacionales, organizar tablas
interconectadas de datos, facilitando el almacenamiento, administración y recuperación A medida que avanzamos en este curso, veremos cómo SQL actúa como el lenguaje que puede
desbloquear todo este poder.
4. Tipos de datos: Muy bien, bienvenido.
En esta lección, vamos a estar sumergiéndonos en un concepto fundamental en
SQL, y eso son los tipos de datos Los tipos de datos definen el tipo
de datos que una columna puede almacenar, ya sean números,
textos, fechas, lo que sea. En esta lección,
vamos a estar explorando por qué necesitamos tipos de datos, además de mostrarte algunos de los más comunes que
encontraremos en este curso. Entonces, en primer lugar, ¿por qué son
importantes los tipos de datos y por qué se utilizan? Bueno, el propósito
de los tipos de datos es garantizar en primer lugar la precisión de los datos. En segundo lugar, optimizan el rendimiento
de la base de datos
y, en tercer lugar, pueden
evitar la entrada de datos no válidos. Piense en los tipos de datos como
reglas para sus datos. Aseguran que almacene el tipo correcto de
información en cada columna. Por ejemplo, no
querría almacenar un nombre en una columna
destinada a números. Entonces, si accidentalmente escribiste un nombre en una columna de precios,
no te dejaría Y esa es solo una
manera de asegurarse que la exactitud de los datos, y como digo, impide la entrada de datos
no válidos. Y también vale la pena señalar que cada tipo de datos está optimizado
para la base de datos. Así que asegurándose de que
cada tipo de datos sea correcto para la columna, asegúrese de que su tabla y
base de datos estén optimizadas. Te voy a mostrar
algunos de los tipos de datos que podrías
encontrarte en este curso. Entonces, si nos fijamos en esta
tabla, tenemos entero, lo que significa números enteros. Tenemos números o decimales, lo que significa números
con puntos decimales. Tenemos texto o RCR, lo que significa un valor de texto, ya
sabes, solo, ya sabes, palabras Tenemos datos y tipos de datos de
tiempo, que son bastante
autoexplicativos Booleano es esencialmente
un tipo de datos que puede
ser verdadero o falso Por lo tanto, es bueno para cuando estás
clasificando los datos. Si, ya sabes, alguien ha
llenado un formulario, puedes decir verdad, y si
no lo ha hecho, puedes decir falso. Y por último, uno que nos
encontramos como serial, que es auto
incrementando enteros Y esto es muy útil
para hacer claves primarias porque automáticamente agrega otro número a la siguiente fila. También quiero aprovechar
esta oportunidad para hablar de valores nulos. Si bien null no es un tipo de datos, es algo que
podrías encontrar en las tablas. Y nulo básicamente significa la ausencia de un valor o
la ausencia de un dato. Entonces no es lo mismo que un
cero o un poco de texto vacío. Significa que
no hay nada ahí en absoluto. Entonces, si te faltan
datos, se te
ocurrirán valores nulos
en las tablas. Pero sí, eso es un
resumen rápido de los tipos de datos. Solo para resumir
los tipos de datos definen qué tipo de datos
se pueden almacenar en una columna, y los valores nulos representan datos
faltantes o desconocidos Y a medida que comenzamos a explorar
las tablas en nuestras bases de datos, comenzamos a ver todos estos tipos de
datos en acción. Pero eso es todo por esta lección. Vamos a estar configurando nuestro entorno SQL a continuación,
así que te veremos ahí.
5. Configurar PgAdmin: Bien. En este video, solo voy a estar bien. En este video. Bien. En este video,
quiero mostrarte cómo podemos descargar y
configurar postgres Bien. En este
video, quiero mostrarte cómo podemos
descargar y
configurar Postgres Post gescu ¿Cómo dices
eso? Post Rescate. Bien, así que bien.
En este video, quiero mostrarte
cómo podemos descargar y configurar PostGres Entonces queremos ir a este
enlace aquí o a esta URL aquí. Entonces es solo
posgrsqal.org slash dnLodsah. Y esto debería
llevarte a esta página, y debería
traerte a esta página aquí. Entonces dependiendo de lo
que estés usando, Sí, ****. Debería ojalá te
traiga a esta página aquí, y aquí es donde vamos a descargar todo nuestro software. Así que simplemente haz clic en el enlace. Y dependiendo de su sistema de
software, dependiendo de su sistema
operativo, hará clic en uno de
estos enlaces aquí. Entonces en mi caso, es Mac. Entonces
vamos a continuar aquí, haz clic en esto y solo tienes que ir
al instalador de descargas
Esto nos llevará a esto. Y ahora
te traerá a esta página aquí. Y te llevará
a esta página aquí. Y lo que voy a hacer es apenas doload la última versión Dependiendo de lo
que estés ejecutando, podría ser la segunda versión
más reciente. Solo echa un vistazo,
pero dependa entonces te traerá
a esta página aquí, y solo voy a
descargar la última versión para Mac OSX Y yo uh debería
traerte a esta página aquí, y ahora solo
voy a descargar la última versión para
mi sistema operativo. Así que solo haz clic en
este botón aquí. Y eso descargará
la instalación, y eso descargará
el software por ti. Y eso descargará el software
de instalación. Y eso se descargará y eso iniciará la
descarga, ojalá. Y eso debería iniciar
la descarga donde luego
podamos instalar nuestro software. Y eso debería
iniciar la descarga para el asistente de instalación. Y eso debería
iniciar la descarga para el asistente de instalación. Una vez que una
vez eso es Una vez que se descargue, solo
voy a hacer
clic en el Descargar y simplemente ejecutar este software aquí y va a
pedir mi contraseña. Una vez
que lo hayamos escrito, ojalá, tengamos nuestro
asistente de instalación próximamente. Ahí vamos. Y aquí y aquí está
nuestro asistente de configuración. Así que sólo vamos a dar
click en Siguiente aquí. Y voy a
escoger y este es el directorio por defecto.
Eso está bien para mí. Puede seleccionar dónde
desea instalar esto. Va a hacer clic en siguiente en esto. A continuación, solo voy a
descargarlos todos a continuación. En cuanto a componentes, solo
voy a mantenerlos
como en cuanto a componentes, solo
puedes
mantenerlos por defecto. Puede que no necesites stack
Builder, pero para ser honesto. En cuanto a los componentes de
configuración, en cuanto a los componentes,
solo déjelo como está. Siguiente. Y lo mismo si quieres cambiar a donde va
tu directorio de datos, puedes cambiar eso, pero solo voy a
mantenerlo por defecto. Y ahora esta contraseña
es muy importante. Esto es lo que usamos para
entrar realmente en nuestras bases de datos. Entonces puede ser algo sencillo. Yo solo voy a usar contraseña, y puedes usar la misma. Y para el puerto, sólo
voy a mantener eso por defecto y lo mismo
con la configuración regional Y sólo vamos
a dejar que eso se instale. Y sólo vamos a
dejar que eso se instale ahora. No tenemos que preocuparnos demasiado
por dónde van las
bases porque solo estamos usando
tablas en nuestro sistema local. Debido a que solo estamos haciendo
consultas simples para este curso, no
tenemos que preocuparnos
demasiado por la configuración. Sólo tenemos que ponerlo en
nuestra computadora y funcionando. Bien, eso es todo listo, y bien, ¿está bien, eso es todo instalado para nosotros? Solo voy a destomar
esto porque no
quiero ejecutar nada
y simplemente haga clic en terminar. Ahora puedo ir a mi launchpad
y tengo a PG admin aquí, así
como algunas otras cosas Ahora si voy a mi launchpad, ahora si ves en mi launchpad, ahora
tengo instalado PG admin Y ahora si ves
en mi launchpad, tengo instalado PG admin, así que simplemente puedo hacer click sobre eso Va a hacer algunas
verificaciones quizás por ti, y podría pedirte una vez más tu contraseña de
usuario Podría tomar un
segundo porque es la primera vez que abres esto podría tomar un poco de
tiempo configurarlo Así que aquí vamos.
Por fin es así que aquí vamos. La pantalla que deberías ver,
está empezando a cargarse y reiniciar Así que aquí vamos. Así que aquí vamos. Después de
unos momentos, ojalá
deberías tener
esta pantalla que aparezca, y solo está esperando que comience
PG Admin four. Y como dije, tal vez
tengas que
poner tu contraseña
un par de veces. Y aquí vamos. Ahora he abierto un PG Admin. No tengo nada en
mi pantalla, básicamente, pero bien, así que eso es PG
Admin todo cargado. Bien, así que eso es PG
Admin todo cargado. Aquí es donde vamos
a estar gastando nuestro curso. ¿Bien? Eso es todo. Bien,
eso es PG admin todo cargado. Aquí es donde
vamos a pasar la totalidad de nuestro curso ahora, pero tenemos algunas
cosas más que necesitamos configurar. Entonces si vamos a la
izquierda Explorador de objetos aquí y hacemos clic en esta flecha, tenemos un par de servidores. Entonces voy a usar
PostGress SQL 17 aquí. Y como notas, si hago clic en esto, dice, Conecta un servidor, por favor
ingresa la contraseña. Aquí es donde escribo
la contraseña, que es, en mi caso, cuando la configuro, contraseña, la palabra contraseña. Es decir, sólo voy a guardar eso porque no necesito
preocuparme demasiado por ello. Entonces, cuando abres tu PJM, y es posible que veas un par de servidores, uno o dos servidores Ahora bien, si solo haces clic en uno de estos y escribes la contraseña
que pones
en la configuración, en mi caso, era contraseña, terminarás ingresando
y tendrás todos estos logotipos aquí. Cuando primero ahora
si miras a tu izquierda, tendrás un explorador de objetos con un par de servidores,
tal vez uno o dos. Si simplemente haces clic en uno
de estos y
escribes tu contraseña que pones en tu Si miras a tu izquierda y miras
al Explorador de Objetos, puedes mirar un
par de servidores. Y en mi caso, es
PostGRS SQL 16. Simplemente hice clic en esto y
puse mi contraseña que definí en mi asistente de
instalación Entonces en mi caso, era
solo la palabra contraseña. Entré en eso, y luego
tengo este esquema ahora. Una vez que tengas todo configurado, es posible que tengas un
par de servidores. Entonces es posible que tengas un par
de servidores instalados, así que solo asegúrate de
elegir el correcto
y solo prueba un
par de contraseñas. Realmente no importa
cuál sea porque vamos a estar haciendo una base de datos
diferente de todos modos. Es posible que tengas un par de servidores
instalados, dependiendo de. Puede que tengas instalados un par de servidores
diferentes, pero solo
echa un vistazo y prueba uno diferente Puede que tengas un par de servidores
instalados, pero no te preocupes. Simplemente haga clic en ambos. Es posible que
tengas un par de servidores
instalados, pero no te preocupes. Haga clic en ellos,
pruebe la contraseña, y si funciona, ese es
el servidor adecuado. Y una vez que hayas iniciado
sesión, deberías tener algunos logotipos más
como este próximamente. Y lo que ahora
vamos a hacer es crear una nueva base de datos. Así que simplemente hacemos clic en
bases de datos, creamos base de datos. Y voy a llamar a
este curso SQL. Y luego solo guarda eso. Y esta base de datos es lo que vamos a
estar corriendo. Y esta es la base de datos que
vamos a utilizar a
lo largo del curso. Ahora, está completamente vacío. Si bajamos a esquemas y luego más
abajo vamos a mesas, podemos ver que no
tiene nada en él Entonces, ¿cómo
agregamos tablas a esto? Bueno, lo que podemos hacer
es que podamos justo lo que tenemos que hacer es simplemente dar click
derecho sobre esto, ir a la herramienta de consulta. Y no te preocupes
demasiado por esto . Y no
te preocupes por esto. Te voy a explicar esto. Ahora, no te preocupes por lo que es
todo esto todavía. Justo Y entonces lo que entonces todo lo
que tenemos que hacer es pegar el código que te he
dado en la hoja de trabajo. Y en este top box
aquí, en el cuadro de consulta, tiene un poco
donde podemos escribir, pegar el código que te
he suministrado. Y en esta ventana superior de aquí, en esta ventana superior de aquí,
hay un lugar para escribir. Simplemente pegue el código que está en la hoja de trabajo para esta lección. Debería verse
algo así. No te preocupes por el código. Es solo para crear algunas tablas para que las usemos en nuestros ejemplos. Y yo simplemente haría clic en
este botón de reproducción, ejecutaría script, y esto ojalá
creara algunas tablas. Una vez que hayas pegado esto en,
presiona el botón de reproducción aquí, y ojalá eso debería una vez que hayas pegado este código en, una vez que hayas pegado este código y
presiones el botón de
reproducción aquí arriba, ojalá
vuelva diciendo, Que volvemos Una vez que hayas pegado
este código en D. Una vez que hayas pegado este código y pulsado este botón de reproducción, ojalá
aparezca un mensaje ******* infierno Una vez que hayas pegado este código y pulsado este botón de
reproducción aquí, ojalá
devuelva un mensaje que diga, Query return
successfully Ahora, no te
preocupes por nada de esto. Esto es solo por ahora no te
preocupes por lo que implica
este código. No tienes que
trabajar. Ahora bien, no se deje intimidar por todo este código Esto es solo para
configurar la base de datos, así que puedes
eliminar completamente eso y cerrar estas ventanas
presionando esta cruz
aquí y te
explicaremos todo esto
en lecciones adicionales. Pero ahora si bajamos
a pero ahora ojalá, Pero si volvemos a nuestro explorador de
objetos de la izquierda, y simplemente vamos a dar
click derecho sobre el servidor. Pero ahora si volvemos
a nuestros servidores aquí y al Explorador de objetos,
simplemente haga clic en Refrescar, ojalá ahora
podamos bajar
a nuestra base de datos de cursos
SQL, y luego en tablas, deberíamos tener mesas libres de
clientes. Pero ahora, si nos fijamos en
nuestro explorador de objetos, pero ahora si volvemos a nuestro explorador
de objetos a la izquierda y simplemente hacemos clic derecho en el
servidor y actualizamos, luego volvemos a nuestra base de datos de cursos
SQL y luego
bajamos a esquemas, ahora deberíamos tener tres tablas Y ahí vamos, clientes,
productos y ventas. Y eso está todo
listo para nuestro curso. Y luego para el resto
del curso para el
resto del curso, estaremos usando esta
herramienta cremosa, así que solo voy a ir. Y eso está todo
listo para el curso. M
6. SELECCIONA: Bien, ahora que ya
estamos todos establecidos, pensemos en cómo podemos empezar
a usar SQL Entonces lo que voy a hacer es ir a mi base de datos aquí, curso
SQL y simplemente
abrir una herramienta de consulta. Y esto
abrirá la herramienta de consulta, y aquí tenemos dos ventanas. Nuestra ventana superior es donde
podemos ingresar nuestro código, nuestro código SQL, y
la ventana inferior es donde se mostrarán los resultados de ese
código. Ahora bien, si voy a mi curso
SQL y voy a esquemas y
bajo a tablas, como puedes ver, tienes
tres mesas cargadas, clientes, productos y ventas Deberías tener
lo mismo también. ¿Cómo obtenemos, por ejemplo, tabla de
nuestros clientes en nuestra hoja de resultados aquí
en la ventana inferior? Bueno, nuestro primer paso es
escribir el siguiente código. Escribimos un select, y
escribimos desde Ahora, estas dos palabras clave son
increíblemente importantes para SQL. Estos básicamente conforman el
framework para cualquier código SQL. Una vez que hayas captado
aquí
este framework básico de las palabras clave select
y from, puedes comenzar a agregar filtros
y cosas así, lo que haremos en
más lecciones Pero por ahora, esta
es nuestra consulta básica. Entonces, ¿qué
significan estas dos palabras clave ? Empecemos con select. Seleccionar nos ayuda a definir qué
columnas queremos de una tabla. Entonces por ahora, vamos
a escribir el asterisco. Este asterisco o clave estrella
básicamente le dice al software, seleccione cada columna Esta llave estrella es muy útil y viene muy
bien todo el tiempo. Entonces, ¿qué significa este
código hasta ahora? Tenemos la primera línea,
que es seleccionar todas las columnas, y luego la tercera
línea, que es de. Ahora, la palabra clave from solo le dice al software de qué tabla queremos extraer
los datos. Tenemos mesas libres,
tenemos productos de clientes y ventas. Así que vamos solo a los clientes. Usaremos las mesas de
clientes. Y ese es esencialmente
nuestro primer código SQL. Y si
vuelvo a leer esto en inglés sencillo, lo que tenemos aquí es seleccionar todas las columnas de la tabla del
cliente. Y para terminar esta consulta, lo que vamos a hacer
es simplemente agregar un punto y coma No es necesario, pero es una
buena práctica que agregues un punto y coma al final
de tu consulta o código Para aclarar, en realidad puedes ejecutar esto solo en una línea, pero por claridad, solo lo
estoy ejecutando sobre
tres líneas solo para que
puedas ver la separación de
cada parte de este código. Ahora bien, ¿cómo
ejecutamos realmente este bit de consulta? Es realmente simple, solo
subimos a este botón de reproducción aquí
y simplemente hacemos clic en él. O si te apetece, puedes usar la tecla F five.
Sólo voy a darle click. Y así,
tenemos la mesa de nuestros clientes. Es realmente tan sencillo como eso. Ahora bien, si
quisieras exportar esto, puedes simplemente
entrar aquí y decir Guardar resultados en archivo, y te lo
guardará como CSV para Excel o cualquier
software que puedas usar. Ahora bien, ¿y si no quisiéramos que se exhibiera la mesa
llena aquí? ¿Solo queremos el nombre y apellido de cada
cliente que tenemos? Bueno, vamos a
desglosar esto. La tercera línea no
cambia porque
seguimos usando la tabla de este
cliente, pero no vamos a estar
seleccionando todas las columnas, así que no vamos a
usar este signo de estrella aquí. Lo que vamos a hacer
en cambio es simplemente definir qué columnas queremos usar
escribiendo nuestras
columnas que queremos. Entonces primer nombre y luego
separados por coma, tenemos apellido Y nuevamente, si solo
ejecutamos así de fácil, tenemos nuestro nombre
y apellido como conjunto de datos. Y nuevamente, podemos
exportar eso a Excel. Ahora, ya, probablemente
puedas ver
lo legible que es esto como código. Tienes la columna de
nombre seleccionada y la columna de apellido de la tabla del cliente.
Realmente así de simple. Si no estás muy seguro de qué
columnas residen en una tabla, puedes hacer el signo de estrella de
selección y simplemente jalarlo hacia arriba y ver
qué columnas quieres, o puedes bajar a
este Explorador de Objetos, entrar en nuestras tablas aquí, y tenemos una cosa aquí llamada columnas y en
realidad puedes ver cada columna aquí. Si no querías empezar
a tirar consultas para simplemente subir
la tabla completa, puedes simplemente subir
a la izquierda y decir:
Bien, quiero seleccionar,
digamos, correo electrónico, coma y apellido de
la tabla de clientes Podemos correr eso,
y ahí vamos. Realmente simple.
7. Uso de alias: Ahora hablemos un
poco de alias. Entonces, lo que tengo aquí es solo la columna de nombre
y la columna
de apellido de la tabla del cliente y solo ejecuta esa consulta y
aquí está el conjunto de resultados. Como puede ver, resultados los nombres
de las columnas son
exactamente como se esperaba. Son lo mismo que lo que estaban en la mesa original de
los clientes. Ahora bien, lo que podemos hacer, sin embargo, es que podemos agregar esta pequeña
palabra clave aquí llamada como, agregar algunas
comillas dobles, y podemos cambiar lo que eso
va a resultar en. Entonces, si solo hago esto, es más fácil simplemente
mostrarte, para ser honesto. Entonces voy a ejecutar esto. Entonces, vamos a
mostrarte esto rápidamente. Este es el ay aquí.
Tenemos como y luego en comillas dobles, nombre del
primer espacio. Entonces observe que esto
no tiene un espacio en la parte inferior en el conjunto de resultados
original. Si ya he corrido esto, podemos ver que ha cambiado eso en
los resultados aquí establecidos. Entonces ahora es el nombre del primer espacio. Y otra vez, podría
simplemente capitalizar eso y ejecutarlo de nuevo. Ahí vamos. Lo está en mayúscula, y
es realmente así de simple. Sólo podemos añadir un alias. Pero lo importante a tener en cuenta es que esto no cambia
la tabla original. Esto solo cambia el
conjunto de resultados en esta ventana inferior. Por lo que no se cambiará nada
en la mesa del cliente. Es solo en esta
consulta, podemos hacer eso. Entonces lo que voy a hacer es que voy a hacer lo mismo otra vez por el apellido y
simplemente cambiarlo. Los alias son realmente geniales porque
te permiten mejorar la legibilidad de un conjunto de resultados, y significa que no
estás encerrado
en cualquiera que sean las tablas en cualquiera que sean las A las columnas se les llama aquí. A veces no son tan amigables como podrías
querer que sean. No se permiten espacios
en estos nombres de columna. Entonces puedes entrar y cambiar
eso y convertirla en una
tabla mucho más agradable que luego puedas exportar
a Excel o lo que sea Y, por supuesto,
puedes mezclar y combinar. Si solo agregamos esto
nuevamente en el correo electrónico. No todo lo que
sacas tiene que ser un alias. Puedes quedártelo
así. O, de nuevo, puedes agregar eso como, digamos, E dash Mo en su lugar. Y ahí tienes.
Es así de simple. Entonces es solo otra
palabra clave como comillas dobles, y luego como
quieras llamar a tu columna en el conjunto de resultados,
puedes hacerlo.
8. Uso de DISTINCT: Hablemos un poco sobre
la palabra clave distinta ahora. Entonces, lo que he hecho
es que he levantado cada columna de
la tabla de productos. Así que estamos cambiando
de la
mesa del cliente a la tabla
de productos aquí. Entonces como pueden ver, si
bajamos y miramos esta tabla, tenemos una columna
llamada categoría. Ahora bien, esto tiene múltiples
entradas del mismo tipo. Así que tenemos electrónica
tres veces, accesorios un par de
veces, etcétera, etcétera. ¿Y si quisiéramos una
manera de simplemente mostrarnos las filas o
entradas únicas en esta columna? Bueno, ahí es donde podemos
usar la palabra clave distinta. Entonces lo que podemos hacer
es escribir ese derecho. Podemos usar esta palabra clave
distinta y luego ir a categoría distinta. Esta es la columna en la
que vamos a usar esta palabra clave distinta. Si ejecuto esto, nos devuelven
cuatro entradas. Tenemos muebles, electrónica, accesorios
y calzado. Lo que esto significa es que
tenemos cuatro entradas únicas dentro de la columna de categoría
en la tabla de productos. Entonces si vuelvo y en realidad
miro esta mesa. Eso sí suena
bien. diez filas reales en la tabla. Pero si miramos y contamos atrás, en realidad solo tenemos
cuatro cosas únicas. Tenemos electrónica, muebles, calzado
y accesorios. Entonces es una forma rápida de simplemente
pasar por una tabla y mostrar las entradas únicas dentro de una fila o una columna, lo siento. Si hiciéramos esto con
el nombre del producto, probablemente volvería con diez filas todavía porque cada uno de estos productos
tiene un nombre diferente. Pero lo intentaremos de todas formas,
solo para mostrártelo. Entonces, como era de esperar, tenemos diez entradas porque cada nombre de
producto es distinto. Son diferentes
entre sí. Así que la
palabra clave distinta no funciona con cada columna. Simplemente funciona con
cosas como categorías o tal vez como países
clientes, pueblos de clientes,
cosas así. Luego puede entrar y ver qué pueblos o qué
entradas son únicas, y eso podría ser útil para lo que sea que esté haciendo
con su análisis de datos. Entonces, sí, eso es básicamente
todo por distintos. La forma en que lo escribes es solo en la parte selecta de la consulta, distinta, y luego solo selecciona qué columna
quieres verificar. Entonces nuevamente,
solo haremos categoría. Y entonces eso solo selecciona
las distintas entradas dentro esa columna de categoría
en la tabla de productos. Y lo que es genial de
esto, de nuevo, podemos usar lo que hemos aprendido hasta ahora y
hacer un alias para esta columna y simplemente
llamarla categorías únicas. Y nosotros hemos corrido esto.
Entonces tenemos una mesa agradable aquí
solo categorías únicas. Entonces ojalá, eso tiene sentido. No es algo
que usarías todos los días, pero es una gran herramienta nosotros. Si lo necesitas, es perfecto.
9. Agregar comentarios al código: Así que hemos ejecutado un poco de código, pero ahora solo
quiero mostrarte cómo podemos agregar comentarios
a ese código. Ahora bien, los comentarios son
cosas que puedes escribir que no
afectan en absoluto al código. Entonces, si quieres agregar notas para tal vez desarrolladores o
notas para ti mismo, tal vez dentro del código, puedes hacerlo, y no
afectaría al código en sí. Los comentarios son algo
que uso todo el tiempo, porque a medida que se llega a usar códigos cada vez más largos que
son un poco más complicados, es posible que desee comenzar a
agregar comentarios y cosas que simplemente ayuden a
aclarar cualquier parte del código. Los comentarios son muy útiles
si estás trabajando en un
entorno colaborativo porque puedes escribir un fragmento de Puedes agregar tus comentarios
que ayuden a aclararlo para la siguiente persona que
pueda asumir algún trabajo. que puedas dejar notas
para la siguiente persona, aunque solo esté
ejecutando el código, puedes simplemente mostrarles con
comentarios lo que está pasando. Entonces, ¿cómo escribimos comentarios? Bueno, no podría
ser más sencillo. Literalmente son solo
dos guiones así. Ahora bien, estos dos guiones permiten agregar un comentario para una línea Entonces si agrego un comentario
aquí, solo significa, digamos así. Pero si entonces fui a presionar Enter y agregué cualquier otra cosa, eso es en realidad parte
del código porque está
en una línea diferente. Entonces los dos guiones es
un comentario justo en la sola línea. Y
otra vez, puedo hacerlo de nuevo. Ahí vas. Entonces ya, podrías mandarle esto
a alguien y probablemente
entendería
lo que estaba pasando. Entonces estos dos guiones solo
significa que es un común. Y como puedes ver, PG
Admin lo colorea en verde. Ahora bien, lo que tenemos
aquí es solo la sintaxis para una multilínea común. Es bastante sencillo. Entonces esto
es en realidad dos mitades. Entonces, si solo
separo esto, puedes ver cómo funciona. Entonces tenemos un slash, slash
hacia adelante, y luego el asterisco
o signo de estrella, y luego podemos agregar
lo que queramos Y esto es diferente a los dos guiones de aquí
porque puedes hacer esto sobre tantas
líneas como quieras Y luego una vez que hayas
terminado con el comentario, simplemente
haces básicamente lo
contrario de lo que hay aquí arriba. Haces el inicio en y
luego el slash al final. Y es muy útil
porque puedes agregar, digamos, títulos aquí, instrucciones, instrucciones más largas que puedes agregar. Algunas personas hacen obras de arte aski
en la parte superior de su código, cosas así. Y
es muy útil. Y verás esto mucho en nuestros ejercicios que
hacemos en este curso. Los comentarios también son muy útiles para cuando
estás escribiendo código, o simplemente
quieres cambiar rápidamente el código sin
eliminar nada. Entonces, por ejemplo, si quiero
cambiar la sentencia select, en realidad
puedo simplemente comentar esta selección y luego
cambiarla al asterisco Y ahí vamos. Eso me da todas las columnas como se esperaba, porque
todo esto está comentado. Pero significa que no he
eliminado ninguno de los códigos. Se acaba de
poner temporalmente en un comentario. Y luego si he terminado con eso, entonces
puedo eliminarlo y volver ejecutar el código para
lo que he seleccionado Nuevamente, muy útil y
ahorra mucho tiempo, te
ahorras tener que, ya sabes, eliminar esto, ejecutarlo, y luego potencialmente, si no
has copiado y pegado,
escríbalo todo de nuevo Sí, así que eso es todo para comentarios.
10. Operadores aritméticos: Todo bien. En esta
lección, quiero hablar de operadores aritméticos Entonces estos operadores son muy, muy útiles para
cuando estás trabajando con datos y quieres
realizar cálculos simples o
complejos
con los datos de la tabla. En este video, te voy a mostrar los conceptos básicos
de cómo puedes empezar a usar estos operadores
dentro de la tabla de productos. Ahora bien, si nos fijamos en las
dos últimas columnas de esta tabla, podemos ver que tenemos
dos columnas con los tipos de datos
numéricos y enteros. Estos dos tipos de datos funcionan
con operadores aritméticos. Realmente quiero enfatizar
esto porque a pesar que tal vez
haya
números en las filas, esto no funcionaría a menos que
los tipos de datos fueran correctos, así que necesitas algún tipo de datos
numéricos. No funcionaría con caracteres
variables, cadenas, cosas así. Pero por nuestro bien, la
mesa se ve bien. Tenemos números en las filas y tenemos los
tipos de datos que son correctos. En realidad podemos hacer algunas operaciones
aritméticas sobre esto. Tengo una lista de estos
operadores que podemos usar. Ahora bien, a lo mejor los
dos primeros son bastante obvios. Tenemos a Adam restar, pero también usamos la
estrella para multiplicar Y la barra para dividir. Y luego finalmente, el
signo de porcentaje, que es un módulo, lo
que significa que devuelve el resto de un
número dividido por otro. Vamos a
pasar por todo esto así que no entres en pánico si estás
un poco abrumado Ahora bien, ¿cómo usamos realmente
estos operadores en el código? Bueno, en primer lugar,
sólo vamos a
deshacernos de cualquier cosa en
la instrucción select, y sólo vamos a poner
paréntesis, entonces corchetes Y dentro de este paréntesis, en realidad
vamos a hacer
nuestro pequeño cálculo. Comencemos con
el operador de adición. Entonces tenemos un plus aquí. Y por el bien de esto, sólo
vamos a poner eso aquí. Tenemos a nuestro operador
entre paréntesis. Ahora solo tenemos que
agregar la información que le dice al programa qué dos columnas queremos
sumar juntas. Entonces en este caso, queremos agregar precio y queremos
agregar cantidad de stock. Agregar el precio en stock
cantidad podría no ser muy útil en términos de
un caso de uso real, pero solo voy a
mostrarte lo que realmente hace. Entonces, si solo ejecutas este
código, ahí vamos. Ahora fíjate que
no hay nombre de columna para esto. Es solo darnos los
cálculos y nada más. No muy útil. Lo que podemos
hacer es que en realidad podemos volver a agregar
esa estrella con una coma, y esto realmente
nos dará todas las columnas que están sobre la mesa más este cálculo extra
que hemos agregado Y ahí vamos.
Ahora, como puede ver, tenemos nuestra tabla normal
más esta columna extra, que es nuestra
columna calculada que agregamos. Si realmente miramos los
datos dentro de esta columna, podemos ver que de hecho es la suma de estas dos columnas aquí. Y claro, lo que
podemos hacer es agregarle un alias a esto y solo podemos
llamarlo suma, solo por ahora. Acabo de correr eso otra vez
y ahí vamos. Ahora tenemos un nombre
para esta columna. Nuevamente, podemos hacer
lo mismo
cambiando nuestro operador y
simplemente convirtiéndolo en un menos. Sólo toma este subt. Ejecuta esto otra vez. Y nuevamente, tenemos nuestro cálculo
dentro de esta columna aquí. Y nuevamente, podemos hacer
esto con la estrella. Y esta en realidad es
bastante buena
porque es el precio
multiplicado por la cantidad de existencias,
que podría ser el valor de las acciones. Lo cual en realidad es
un buen cálculo para agregar a esta tabla. Esto nos mostrará
el valor total de los productos que
tenemos en stock. Entonces ya, ese es un caso de uso muy útil
para este operador. Entonces, si tu jefe
preguntaba, ¿cuántos
mouses inalámbricos tenemos? Y, como, ¿cuál es el valor
total de eso? En stock, puedes hacer
ese cálculo rápidamente y
enviarlo a ellos. De nuevo, podríamos simplemente
cambiar ese operador para que se dividiera el precio
por la cantidad de stock. Yo sólo voy a llamar a eso
dividido. Y ahí vamos. Nuevamente, no es muy útil
en cuanto a la salida, pero solo estoy
tratando de demostrar el propio operador real. Ahora, módulo es un
poco raro. No es algo que use mucho, y puede hacer tropezar a la gente. Entonces básicamente lo que es, produce el resto de, en este caso, precio
dividido por cantidad de stock. Entonces tenemos 25/100. Ahora, eso
en realidad no divide, así que tenemos un
resto de 25 99. De nuevo, es un poco
raro. Entonces, en este ejemplo, busquemos uno
que realmente tenga resto que sea diferente. Sí, entonces 70/40. Tenemos que puede entrar
una vez que puedas obtener 40 y luego 30
sobrantes equivale a 70 Entonces es básicamente
un resto. Ahora bien, lo genial de
estas operaciones es que no es necesario usar dos columnas para
hacer realmente ningún cálculo. En realidad podemos
simplemente ¿sabes?, usando números
calcular nuevos valores. Entonces por ejemplo, digamos que tu
jefe por alguna razón dijo:
Oh, teníamos un cliente en que
compró diez de todo, así que necesitamos sacar diez
de la cantidad de stock. Podemos hacerlo simplemente usando nuestros corchetes
aquí en primer lugar y simplemente poner cantidad de stock,
comida para llevar, menos diez. Déjeme decir
eso como nuevo stock. O sea, si ejecutamos eso, aquí
tenemos un cálculo de la cantidad de
existencias menos diez. Tiene sentido, pero
solo quiero mostrarte que no
tienes que hacer, ya
sabes, cantidad de stock
menos precio ni nada. Sólo pueden ser números. Y por cualquier razón,
podrías simplemente hacer, como,
cálculos simples también. Si solo quieres usar dos
números, puedes agregarlo en. A lo mejor es como un
número de identificación o algo así. Pero, sí, no
necesitas columnas para estos, pero
probablemente terminarías usando algún tipo de
columna en tus cálculos. Y claro, puedes hacer
múltiples cálculos. Entonces digamos que tenemos en
este soporte interior aquí, solo
vamos a
poner tiempos de precio también. Y luego digamos,
queremos agregar algunos corchetes más
porque me gustan los brackets. Ayudan tipo de compartimentalizar
las cosas para Um, perdón. Aquí tenemos nuestros
corchetes internos. Entonces podemos agregar, digamos, 50 a eso, 30, perdón. Sí, un ejemplo. Eso va a correr. Así que tenemos nuestros tiempos de
precio por dos más 30. Por cualquier razón, si eso es algo que necesitabas
hacer, puedes hacerlo. Así que ni siquiera solo necesitas
hacer el único cálculo. Puedes hacer tantos como quieras,
más 40, dividir por 20,
digamos, ya sabes, podemos volvernos tan locos como quisiéramos, y podría resultar confuso porque estoy
usando muchos corchetes, pero eso es algo que me
gusta hacer porque luego me ayuda a desglosar qué
cálculos están sucediendo. Tenemos precio multiplicado por dos en su propio pequeño soporte, más 30. Podemos poner eso
entre paréntesis si quisiéramos. Eso es algo propio.
Y luego más 2022/20, ese es su
pequeño cálculo propio Entonces sí, a algunas personas tal vez
no les guste hacer esto, pero a mí me gusta
hacerlo porque me permite compartimentar el tipo de adiciones que estoy haciendo
o cualquier operación Y también, a veces ayuda con
el código real, ya sabes. A veces el código podría
no saber qué hacer con números y cálculos si no lo tienes entre paréntesis. Pero sí, pensemos en un caso de uso
real para esto. Entonces digamos que tenemos un 10% de
descuento en todos nuestros precios. Lo que podemos hacer es
comenzar primero con nuestros corchetes, precio, dividir por 100 y eso
nos dará 1% del precio. Entonces podemos multiplicar esto por 90. Otra vez, solo por mi bien, veras, solo quiero
poner eso entre paréntesis, y podemos decir eso
como nuevo nombre, 10% de y
vamos a correr esto y
notar lo que pasa. Tenemos un 10% de
descuento sobre nuestro precio. Ahora, como pueden ver,
tenemos muchos ceros en esto. Esto a veces puede suceder
cuando estás dividiendo ciertos tipos de datos o trabajando
con ciertos tipos de datos, la forma en que funcionan algunas veces,
enteros y
tipos de datos numéricos, puede
que no sean tan Ahora bien, lo que podemos hacer, esto
es un poco de bono. Podemos usar la función round. Yo sólo voy a poner
eso entre paréntesis también. Y lo que podamos hacer,
solo escribiré esto y
te lo mostraré. Eso lo limpia.
Entonces, ¿qué está pasando? La función round
es esencialmente redondear nuestro número Estamos redondeando algo, así que sólo voy a poner esto entre paréntesis
de cálculo Y luego definimos qué punto
decimal queremos que eso. Esa es la sintaxis
si quieres usar eso. Redondea entre paréntesis
el cálculo, y luego una coma y defina
qué precisión desea Digamos que queremos que el precio sea por alguna
razón, diez decimales. Eso lo podemos hacer. Ahí vamos. Tenemos todos estos. Entonces, si nosotros, ya sabes, fuimos
a lugares de 100 decibelios, si realmente queremos hacer
eso, podríamos hacerlo, pero, ya
sabes, probablemente
no sea necesario Pero esa es probablemente suficiente
información por ahora. Tener un poco de lío y simplemente
jugar con él. Creo que ese es el mejor
consejo que puedo darte. No vas
a aprender
simplemente viéndome
meterse con cosas. Creo que es muy importante que empieces a
jugar con cosas. Te proporcionaré una
hoja de trabajo en la que
realmente puedes comenzar a trabajar
y responder algunas preguntas. Pero por ahora, solo tiene
un pequeño lío alrededor. Y esa es una pauta básica
para los operadores aritméticos.
11. Ordenar por: Hola, y bienvenidos de nuevo
a otra lección. En esta lección, les
voy a mostrar cómo
podemos ordenar nuestro conjunto de resultados. Esto puede ser muy útil
si quieres ordenar tu
conjunto de resultados para la exportación, decir que quieres algo
alfabético, puedes hacerlo, o si quieres algo con un precio alto a bajo, también puedes
hacerlo. Y voy a
mostrarte cómo lo haces ahora. Entonces en este momento solo tenemos todas las columnas de la tabla de productos, y no vamos a hacer ningún filtro ni
nada por el estilo. Sólo vamos a
centrarnos en cómo podemos ordenar esto en un
pedido personalizado para nosotros mismos. Todo lo que tenemos que hacer
para comenzar a organizar estos datos es simplemente
al final de este código, escriba en orden B. Esta es nuestra declaración
donde podemos definir lo que queremos
ordenar nuestros resultados establecidos por. Entonces, para este ejemplo,
veamos ordenarlo por categoría. Así que sólo vamos
a escribir en la columna por la que
queremos organizarla. Ahora tenemos la opción
de ordenarlo alfabéticamente de alto a bajo o alfabéticamente de bajo
a alto Y eso es lo que están aquí estas
dos opciones. Entonces podemos o bien poner ascendente, así ASC o descendente, DESC En este caso,
voy a hacer ascendente, sólo para mostrarte cómo se ve. Y si ejecuto esto,
como pueden ver, no ha cambiado nada en cuanto a los datos
que se están produciendo, sino que ha cambiado
el orden de los mismos. Entonces ahora tenemos una categoría,
la categoría de columna. Todo es alfabéticamente ascendente. Y a la inversa, si
hicimos esto descendiendo, ahora
lo tiene al
revés. Así que cuanto más a lo largo del
alfabeto comienza en la parte superior, y luego vuelve
al inicio del alfabeto. Si lo hicimos con precio
y tipo de datos numéricos, y simplemente ejecutamos ese
precio ascendente. Ordena el precio de bajo a alto. Y luego el
precio descendente es de alto a bajo. Similar a como sabes, si estás haciendo compras en línea, puedes hacer tu clasificación por precio
descendente o ascendente. Lo mismo que podríamos hacer
aquí con nuestro código. Y claro, puedes hacerlo
con cualquier columna que quieras. Pero lo que es realmente genial es
que puedes hacer múltiples pedidos. Entonces volvamos a la categoría. Entonces eso es una carrera.
Así que acabo de ejecutar ese orden por categoría ascendente y obviamente es comenzar con A, y vamos
bajando alfabéticamente. Pero, ¿y si
quisiéramos ir más allá y agregar otro pedido? Entonces, si miraste dentro de
la sección de electrónica, tenemos precios que son especie de nogallos Pigoty.
En realidad no están organizados. Lo que simplemente podemos hacer es agregar una coma y luego
agregar un segundo orden Así que vamos a hacer precio descendente. Y si hacemos eso y lo
ejecutamos, primero conseguimos nuestra categoría. Organizado de la A a la Z,
y luego,
en segundo lugar , dentro de esas categorías,
en realidad hemos puesto otro orden, que es el precio descendente. Así que tenemos el precio más alto en la parte superior, y baja. Y eso es
lo básico para ordenar
y ordenar tus conjuntos de datos. Potencialmente podrías
agregar un tercero o cuarto o por
muchas compras de pedidos, pero creo que, para ser honesto, empieza a quedar un poco
limitado porque si estás ordenando algo
por categoría primero y luego
dentro de ese precio, todavía
hay alguna fluctuación, tal vez
puedas agregar
un tercer pedido, por ejemplo, en este caso, realmente no
podríamos hacer mucho más Quizás podríamos ordenar
por cantidad de stock, pero desafortunadamente,
si lo hiciéramos, entonces cambiaría
el orden del precio. No sería capaz de
ir ordenado por ascender. Entonces es una especie de jerarquía. Empezará con la categoría y luego
entrará en el precio, y luego si hay algo más que podamos ordenar,
podrías agregar eso en. Pero en este caso, en realidad sólo
podemos hacer dos. Y si estás ejecutando esta
consulta con filtros y cosas, con una cláusula Ware, este orden por característica irá
al final de esta. Entonces estamos haciendo todo
el filtrado primero, y luego estamos ordenando las cosas al final de la consulta. Así que básicamente puedes
construir tu código, conseguir que todo funcione,
y luego al final, puedes agregar tu orden por categoría ascendente y luego precio descendente o
lo que quieras hacer. Pero sí, la
sintaxis básica es ordenar por y luego poner columna, donde quiera hacer, y luego ascendente o descendente. Y eso es básicamente
todo. Bastante simple.
12. DÓNDE: He visto cómo podemos
usar operadores aritméticos, pero ahora quiero hablar
sobre cómo podemos realmente filtrar nuestros resultados usando SQL Esta es una de las formas más
poderosas y útiles usar SQL como principiante, y usar el filtrado
es algo que haces todos los días si
estás usando SQL. Entonces hablemos de cómo
podemos filtrar los resultados. Entonces ahora mismo, he seleccionado todas las columnas de
la tabla del cliente. A estas alturas, este marco
debería ser bastante familiar. Tenemos la
función select y la función F. Vamos a añadir
una tercera después la F llamada W. Esta
es la cláusula Ware. Y aquí es donde
definimos cómo queremos filtrar nuestros resultados
en esta ventana inferior. Y aquí es donde va a ser útil
la lista de operadores. Sólo vamos a
centrarnos en este primero, que es igual a,
que es un signo igual. Entonces, ¿cómo filtramos nuestros resultados? Empezamos con la cláusula Ware, pero ¿qué hacemos
aquí después? En primer lugar, pensemos en
lo que queremos filtrar. Para este primer ejemplo, todo lo que quiero hacer es filtrar cada cliente que tenga
el primer nombre John. Entonces en esta cláusula Ware, todo lo que
tenemos
que hacer es definir qué columna queremos
filtrar. Entonces primer nombre. Y luego es igual, y
en citas simples, ponemos a lo
que queremos filtrar Entonces si ejecuto este código, volvemos el nombre John. Entonces esta es la única fila en toda
la tabla donde el
primer nombre es igual a John. Ahora fíjate lo que hago si
cambio eso a una J. no mayúscula nada aparece. Eso es porque esto entre comillas
distingue entre mayúsculas y minúsculas. Entonces eso es algo
a tener en cuenta. Y así
filtras las cosas. Y esa es la
sintaxis básica para la cláusula aware. Tenemos que definir en primer lugar qué columna estamos filtrando
y cómo lo estamos filtrando. Y, por supuesto, podemos hacer estos filtros en cualquiera de las columnas. Entonces digamos que queremos encontrar el ID de cliente
que es el número cuatro. Así que solo escribimos en seleccionar todas las columnas de los clientes donde ID de
cliente es igual a cuatro. Y debido a que esta columna es un tipo de
datos que es numérico, no hay que
ponerla necesariamente entre comillas simples. Así que si ejecuto esto, sí, lo
tenemos de vuelta. Y claro, si todavía
lo ponemos entre comillas simples,
seguiría funcionando. No obstante, si intentamos eso
con el nombre de pila, igual que antes,
vamos a correr eso, y eso debería volver
con el primer nombre John. Si no teníamos
eso en citas, sí, estamos recibiendo un error
porque no existe Tenemos que ponerlo en citas. Entonces en al menos PGDBin
tienes que poner comillas
simples cuando estás
filtrando columnas basadas en texto Y por columnas basadas en texto, me refiero a los
tipos de datos reales en sí mismos. Y así es como haces
tu filtrado básico. Ahora bien, lo que tenemos
aquí son algunos de los diferentes operadores que podemos usar con estos filtros. Entonces ya cubrimos igual, y eso es bastante obvio. Es donde algo es
igual a lo que escribas. A continuación, tenemos mayor
que, menor que. Entonces, si escribí, nuevamente, ID de
cliente es,
digamos, mayor que tres Da como resultado
que todos
los ID de clientes sean mayores a
tres como se esperaba. Y claro, si corriéramos eso como menos de tres, también
obtendríamos el uno. Ahora bien, estos dos símbolos no incluyen el número que escribas, por lo que es mayor que tres,
no incluye gratis, y por supuesto, menos de
tres no incluye tres. Pero si quisieras incluir
eso dentro de tu conjunto de datos, puedes usar digamos, mayor que igual a. Entonces esto será todo
mayor que tres, pero también incluye gratis también. Y de igual manera, menos de
tres o igual a libre. Lo filtra en ese sentido. Y finalmente, una buena para
usar a veces es esta de aquí, donde pones un signo de
exclamación antes del signo igual Y eso significa seleccionar
todas las columnas de las tablas de clientes donde el ID de
cliente no sea tres. Y como puede ver,
y como puede ver, tenemos todos los ID de
clientes de la tabla aparte del ID de
cliente gratis. Lo interesante
es que cuando empiezas a hacer más y menos que filtros en el texto es que
empieza a hacer alfabéticamente Entonces, cuando tienes cosas
que son menos que John, tienes cosas que están
antes de John alfabéticamente, e igualmente, mayores que John Tendrá nombres que van después de Juan alfabéticamente, lo cual es bastante útil y una
forma bastante interesante de filtrar las cosas Y, por supuesto, si le
agregas el eco signo a
eso, incluirá a John
dentro de tu conjunto de resultados. Y eso
cubre los conceptos básicos del
filtrado de datos usando SQL. Mi consejo es comenzar a
jugar con estas tablas, jugar con las citas
y ver qué funciona y
ver qué no con
diferentes tipos de datos, y tener una idea de ello
13. Uso de operadores lógicos Y/O: Bien, la lección anterior,
miramos cómo podemos comenzar a filtrar nuestros resultados
usando la cláusula Ware. Esto es genial y muy útil, pero es bastante
limitado porque solo
puedes ejecutar un filtro. Entonces en este caso, estamos
ejecutando un filtro donde estamos encontrando el primer nombre y el
primer nombre tiene que ser John. Entonces, si ejecutamos eso,
obtenemos nuestro resultado. Obtenemos a John Doe, y ese es el ID de
cliente número uno. Y eso es genial, pero es bastante limitado porque
¿y si queremos empezar
a filtrar las cosas
por nombre y apellido? Porque puede haber varios
johns en nuestra base de datos, pero estamos
buscando un John específico Bueno, ahí es donde
podemos empezar a usar estas palabras clave aquí. Estos son una especie de operadores
lógicos
que podemos usar
dentro del filtro, lo que suena aterrador,
pero realmente no lo es. Y honestamente, la mejor manera aprender sobre ello es
simplemente mostrándote. Entonces vamos a comenzar
con esto y la palabra clave aquí. Entonces, lo que
hace esto y palabra clave es esencialmente decirle al filtro que
se tiene que cumplir una segunda cláusula para
producir un resultado. Entonces echemos un vistazo.
El primer nombre es John, y en este caso, el
apellido es Doe Entonces, si solo hacemos esto, seguimos obteniendo nuestro resultado
porque el primer nombre es John y el apellido es
Doe, y eso es correcto Pero di si cambio este
nombre por otra cosa, digamos, John Smith. Ahora bien, esto no
existe en nuestra base de datos. A pesar de que el primer nombre John, eso existe porque lo
tenemos aquí. No hay ninguna entrada en nuestra
base de datos que tenga el nombre John y el apellido
Smith. Entonces aquí vamos. Ejecuté el guión y
no volvió nada. Entonces la palabra clave and
es esencialmente otro filtro dentro de
ese primer filtro. Entonces la palabra clave and básicamente
le dice al software que tanto esto como esto tienen ser ciertos
para producir un resultado. Por otro lado,
tenemos la palabra clave O. Aquí es donde cualquiera de
estos puede ser correcto, y producirá un resultado. Entonces, si ejecuto esto ahora, no va a
hacer la diferencia porque el primer nombre es John o el apellido es Doe.
Es la misma fila. Es el mismo punto de datos. Sin embargo, he
cambiado el guión, y de hecho he agregado una cláusula
o del primer
nombre que iguala a Jane Entonces, si ejecuto esto ahora,
obtenemos dos resultados. Tenemos a John Doe
y Jane Smith. Lo que básicamente le hemos dicho al
filtro que haga es seleccionar todas
las filas de la tabla de clientes donde el primer nombre es John, o el primer nombre es Jane. Entonces estos dos filtros son esencialmente independientes
entre sí. Tienes tu
nombre es igual a John, o el primer nombre es Jane. Entonces esta es una buena manera
de tener dos filtros sobre la marcha. Entonces estamos filtrando por
el primer nombre es igual a John o el primer
nombre es igual a Jane. Si cambio eso a
A, no va a funcionar porque no hay papel que tenga el primer nombre John y
tenga el primer nombre Jane. A continuación, tenemos
la palabra clave between, y aquí es donde
queremos seleccionar un rango de puntos de datos. Entonces, por ejemplo,
queremos seleccionar, digamos, el ID de cliente 3-5. Y si ejecutamos esto, obtenemos todos los resultados
que tienen
ID de cliente entre gratis y cinco, que es exactamente lo que
tenemos aquí abajo, lo
cual tiene sentido. Por lo tanto, es una excelente manera de
obtener rápidamente una variedad de puntos de datos. La palabra clave between
es muy útil para donde se desea seleccionar
un rango de puntos de datos. Entonces un ejemplo aquí,
en realidad
lo he filtrado alfabéticamente Entonces el primer nombre está entre A y E. Y volvieron dos
resultados. Tenemos a David y Chris, que está alfabéticamente
entre A y E. Así que puedes ver como ya ese es
un filtro bastante interesante Y, por supuesto, vamos a añadir otra cláusula a eso. Donde no sólo esto
tiene que ser cierto, sino que su primer nombre
también tiene que ser David. Y eso lo reduce
a solo este de aquí. Entonces ya puedes empezar a
ver lo poderoso que puede ser esto. Por último, tenemos
la palabra clave in. Pero antes de eso,
voy a mostrarte una muy mala manera de
hacer algo. Entonces digamos que quiero un número
de estas columnas de vuelta. Lo que puedo hacer es este proceso
muy largo donde básicamente hago un
o filtro para cada nombre. Así que voy a escribir
esto muy rápido. Lo que he hecho aquí
es una manera bastante desordenada de filtrar los
nombres que quiero Entonces el filtro es, ya sabes, seleccionar de todo, desde clientes
donde el primer nombre es John o el primer nombre es Jane o
Emily o Michael o David. Y me ha dado eso, pero es un poco
desagradable escribirlo. Y te imaginas
escribir esto para 100 entradas podría
llegar a ser un poco tedioso Lo que puedes hacer en cambio es esto Lo que puedes hacer en cambio es esto. Se puede utilizar la cláusula final. Con un paréntesis de par, solo
tienes que poner cada
entrada que quieras Obviamente separados por comas
y con comillas simples. Y esto
te dará el mismo resultado escribir,
ya sabes, nombre es John o el primer nombre es Jane o el primer nombre
es Emily, etcétera Esto es muy útil
para cuando estás filtrando múltiples
cosas en una lista grande, solo
puedes usar esta cláusula, y solo ahorra mucho
espacio en la pantalla, y evita que tus
dedos
tipeen o muchos tipos. Y, por supuesto, se puede empezar a utilizar estos en conjunto
entre sí. Tenemos un filtro
para el nombre, cualquiera de estos nombres, y el apellido es De
o Brown. Y vuelve con
este resultado establecido aquí. Y mi consejo, de nuevo, es simplemente meterse con
esto, ver qué funciona, ver qué no funciona,
ver cómo se pueden cambiar los
órdenes de estos. Pero mientras exista
una cláusula Ware, puedes hacer lo que
quieras. Eso lo resume. Y, por supuesto, habrá una hoja de trabajo para ir de
acuerdo con esto. Entonces, si aún te
sientes un poco confundido, habrá una hoja de trabajo
con preguntas y respuestas, para que puedas ver cómo
se usa en contexto.
14. Uso de LIKE y sus wildcards: Bien, así que hemos tenido un poco
de exposición a cómo podemos filtrar nuestros conjuntos de datos y
resultados usando la cláusula Ware. Ahora podemos mirar
al operador L. Ahora, el operador se usa junto con
la cláusula Ware para resaltar y filtrar patrones
muy específicos dentro de cadenas o texto. Es importante tener en cuenta
que el operador trabaja con tipos de datos basados en cadenas
o basados en texto. Entonces, siempre y cuando tu
columna tenga algún tipo de
tipo de datos basado en texto, debería funcionar. Ahora, como siempre, es más fácil mostrarte cómo funciona en
lugar de hablar ello en teoría porque en
realidad es más fácil de ver en acción en lugar simplemente estar desconcertante al
respecto como Entonces, ¿cómo conseguimos que esto como
operador entre en acción? Bueno, empezamos
con nuestro filtro de usuario, que es la cláusula Ware, y luego sólo vamos
a elegir una columna. Entonces vamos a filtrar el nombre de
pila. Hagámoslo. Y en lugar de
poner un signo igual o uno de nuestros otros operadores, en cambio
vamos a simplemente
escribir como entonces después de eso, solo
vamos a agregar
algunas comillas simples. Y dentro de estas comillas simples
es donde podemos empezar a definir lo que estamos
buscando o lo que estamos filtrando. Y aquí es donde entran los
comodines. Entonces como pueden ver, en el comentario aquí,
tenemos un par de cosas. Entonces, los comodines son esencialmente
lo que puedes poner en estas citas para ayudar a especificar
lo que estás buscando Tenemos dos comodines. Tenemos un
signo de porcentaje y un guión bajo. Un signo de porcentaje
representa cero, uno o muchos caracteres, mientras que el guión bajo solo representa un carácter
singular Ahora bien, eso probablemente no va a tener mucho
sentido hasta que empecemos a usar
el operador like, pero solo quiero
hacerte consciente si eso es
lo que son. Centrémonos primero en el
porcentaje. Ahora bien, lo que voy
a escribir aquí es sólo una J mayúscula y
un signo porcentual. Ahora bien, ¿qué significa esto
en realidad? Lo que esto realmente significa es que
vamos a estar
buscando un primer nombre que tenga una J mayúscula al inicio y luego cualquier número de
caracteres después de esa J. mayúscula En otras palabras,
estamos buscando un nombre que comience con J. Y si ejecutamos este guión, recuperamos dos resultados. Y como era de esperar,
el primer nombre para estos resultados ambos comienzan con J. Como de costumbre, esto distingue entre
mayúsculas y minúsculas. Entonces si pongo una J minúscula, nada sale porque
ninguno de los nombres, ninguno de los
nombres en este conjunto de datos tiene una J minúscula para empezar Entonces sí, eso básicamente le dice
al software que estamos buscando un patrón específico dentro de la columna del primer nombre. Y ese patrón es
una J, una J mayúscula, y luego cualquier otro
carácter después de eso J. Ahora, a
la inversa, si ponemos
ese signo porcentual al inicio de nuestra cotización
y luego ponemos una E al final, ahora estamos buscando,
pensemos. Así que tenemos cualquier número
de caracteres y cualquier tipo de personaje
y una E al final. Eso básicamente es decirle al
software que estamos buscando un primer nombre que termine en E.
Así que ejecutamos ese script. Obtenemos un resultado, un primer
nombre que termina en E, Jane. Eso tiene sentido. Ahora
ojalá puedas empezar a ver ya lo poderoso que es
este operador como. Ahora, claro,
no tiene que ser un comodín y
luego una letra. Puede ser cualquier tipo
de combinación que quieras.
Echemos un vistazo. Si hacemos MI y luego una E y luego tal vez otra señal
porcentual, ¿qué vamos a conseguir? Bueno, pensemos en
lo que estamos
buscando o en lo que
le pedimos que busque. Estamos buscando un primer
nombre que tenga una M y yo al inicio y luego cualquier
número de letras después de eso. Pero también queremos una E
entre esas letras. Así que mientras
haya una M y yo, algunas letras una E, y tal vez algunas
letras después de eso. Si ejecutamos ese script, obtendremos un resultado, Michael.
Y eso tiene sentido. Y si cambio esa E a una L, que es la última
letra en Michael, todavía nos dará el mismo resultado porque
este signo porcentual
solo está cubriendo todo, desde cero caracteres hasta cualquier
número de caracteres. Y solo por contexto, si
solo pongo un signo de porcentaje, esto es decirle
al software que busque un nombre que tenga cualquier número de caracteres y cualquier tipo de
combinación de caracteres. Entonces, si escribo eso
y lo ejecuto, obtendremos cada
nombre porque cada nombre coincide con ese criterio de cero, uno o muchos caracteres. Y claro, no necesitas
usar ningún comodín en absoluto. Si acabo de escribir a John como está escrito y busco eso,
te devolverá ese resultado Pero si acabo de escribir J, eso no me dará ningún
resultado porque
no hay nombre que solo tenga
una J y nada más en él Para hacerlo
correctamente, tendría que hacer
esto y volver a agregar un comodín Así que eso cubre el lado
porcentual. Es solo que representa
cualquier número de caracteres. En el lado opuesto,
tenemos nuestro guión bajo. Ahora bien, esto representa un personaje y un solo
personaje. Y esto es genial para si
buscas ciertas longitudes de, ya
sabes, texto, déjame
demostrar cómo funciona eso. Digamos que estamos buscando un
nombre que comience con J y que tenga otras tres
letras después de eso. Nunca busqué eso, una
vez más conseguimos a John y Jane. Parecen ser
los populares en este momento. Y eso es porque cuando lo
piensas, estamos buscando un primer
nombre que comience con una J y luego tenga
otros tres personajes, no importa cuáles sean, tenga otros
tres personajes
después de eso. Si agregué otro guión bajo
y vuelvo a buscar esto, notarás que no regresan
resultados, y eso es porque
estamos buscando ahora un nombre que
tenga una J para empezar Sin embargo, tenemos algunos de esos.
Pero entonces estamos buscando unas con cuatro
letras después de esa J, y no tenemos
ningún nombre así. Para que puedas ver lo específico que puedes conseguir
con estas cosas. Y puedes comenzar a combinar estos comodines para ser realmente específicos
con tus búsquedas. Entonces, aquí hay un ejemplo rápido de una especie de combinación
de las tres cosas. Tengo un comodín porcentual, tengo los comodines de
guión bajo, y solo tengo Entonces, ¿qué estamos buscando aquí? Estamos buscando
cualquier apellido que tenga algún número de caracteres, pero en algún momento contenga
OH. Y luego después de eso OH, hay uno, dos,
tres, cuatro personajes. Entonces voy a seguir adelante y
correr eso y ahí vamos. Tenemos un apellido que
cumple con ese criterio, Johnson Y eso se ve
bien. Entonces tenemos OH. Marque eso, y luego NSON y eso son cuatro
personajes después de ese OH Y luego el signo porcentual
que puede representar a la J. Y esa es una forma de
usar el operador like. Y, por supuesto, podemos
empezar a apilar estos como operadores usando las funciones
O o y. Entonces en este caso, estoy
buscando un apellido que comience con D o un nombre
que comience con J. Y si ejecutamos ese script,
obtenemos tres resultados. Apellido que comienza con D, tenemos Doe y Davis, y luego cualquier nombre que comience con
J, John y Jane Un gran ejemplo de usar esto es en los correos electrónicos donde quieres
tener correos específicos donde
quieres todos los clientes
que tengan una cuenta de Gmail, así solo puedes
escribir, ya sabes, gmail.com con el signo de
porcentaje Y eso te dará
cualquier cliente con el correo electrónico que tenga un
gmail.com al final En este caso, no tenemos
ningún tipo de Biva en example.com. Voy a traer de vuelta todos
los correos que tienen
example.com al final, y en este caso,
son todos ellos Y eso es lo básico
del operador similar. Te animo a que
simplemente te metas con estos comodines y solo
escribas cualquier tipo de combinación y veas si puedes obtener resultados
específicos
15. AGREGACIONES y AGRUPAMIENTO POR cláusulas: Bien, entonces lo siguiente en la
agenda es hablar agregaciones y también
del grupo por cláusula Entonces las agregaciones son
cálculos sobre un conjunto de valores que
producen un resultado Entonces tengo una lista de
las principales agregaciones que podrías usar aquí Así que tenemos Min que muestra el valor más pequeño en un
grupo o columna seleccionada en este caso, Max, que muestra el
valor más grande en una columna seleccionada, count, que devuelve el
número de filas en un conjunto. Este es bastante
útil. Suma y que devuelve la suma total de una columna numérica
y el promedio, que devuelve el
valor promedio de una columna numérica. Ahora bien, estos son
probablemente bastante similares a lo que verías en Excel, especialmente los de suma
y promedio. Pero son muy útiles
para si solo quieres compilar un montón de
datos en un solo resultado. Mira, digamos que estás trabajando
con E Commerce, posible que quieras encontrar el MAX el
pedido de mayor precio que hayas tenido, o tal vez la cuenta, que es el número
de pedidos que has tenido, puedes hacerlo rápidamente
con agregaciones Incluso la media, todas estas agregaciones
son muy útiles, sobre todo cuando
empezamos a
combinarla con la cláusula group by Entonces, ¿cómo aplicamos
estas agregaciones? En realidad es bastante simple. Así que vamos a
subir a nuestra
cláusula select y
vamos a escribir. Digamos que usaremos el MI. Y pondremos nuestros corchetes. Y dentro de este paréntesis, ponemos la columna en
la que queremos usar esta agregación. Así que vamos a probarlo sobre el precio
de nuestra tabla de productos. Y si lo escribimos
y ejecutamos ese script, obtenemos el valor mínimo
de la columna de precios. Lo mismo para el max. Obtenemos el precio más alto que
tenemos en nuestra base de datos. Si queremos ver el precio promedio de
lo que estábamos haciendo, podemos simplemente escribir AVG en su lugar. Corremos eso y aquí obtenemos este número
muy largo, que es justo la forma en que funciona el
número, pero podemos usar, una vez más, nuestra función round, poner eso entre paréntesis. Y solo agrega. Lo siento.
Sólo haz eso, corre eso. Entonces podemos redondear eso
hasta solo dos valores decimales, y luego tenemos un precio promedio de
aspecto agradable. Y por último, si queremos
encontrar la suma total, que es, en este caso, 1677, solo usamos aquí esta
sintaxis, SUM sum Por último, podemos ver
la agregación de conteo y los recuentos un poco diferentes. Se puede definir una columna, así podemos seleccionar el precio de conteo, y eso nos
devuelve diez filas aquí, que es exactamente lo que hay
en la base de datos. Pero solo puedes
usar el signo estelar, que es el conteo de cualquiera de las columnas, que
aún devuelve diez. Ahora bien, esto puede ser bueno porque puedes especificar
qué columna quieres contar porque si
tal vez estás mirando una columna
específica, puede
que no esté completamente poblada. Podría haber algunos valores
nulos ahí, lo que significa que el recuento
de las filas sería diferente de solo contar desde cada columna,
si eso tiene sentido. Pensemos en
eso por un segundo. En esta tabla,
tenemos diez filas en total. Entonces, si lo hice, seleccione contar. En todo, me
daría diez resultados. Pero digamos dentro de la columna, teníamos tres valores nulos. Si hiciéramos el recuento
para la categoría, sólo
volvería con siete. Y esa es la
diferencia entre usar count star y count
dentro de una columna. Sin embargo, la mayoría de
las veces solo uso la estrella de conteo, porque eso te dará el conteo total para toda
la mesa. Realmente no podemos usar
la suma y
las agregaciones promedio en
nada que no sean datos
numéricos porque
¿cómo se puede obtener la suma de una columna de texto ¿De verdad funciona de
esa manera? Todavía podemos usar el Min max
y contar, aunque. El MN que simplemente
funciona alfabéticamente. Entonces, si pongo el nombre del producto, ¿cuál es el nombre mínimo del producto? Nos voy a dar mochila,
que es, supongo, ya
sabes, la más cercana a
A, en ese sentido, y luego a la inversa,
usamos el nombre del producto Max. Eso nos dará
lo que está más cerca
del final del alfabeto, que es el
mouse inalámbrico en este caso. Ahora probablemente estés pensando
que eso es bastante limitado, pero en cuanto empezamos a usar estas agregaciones con
la cláusula Group By, empieza a ser
realmente útil Así que la cláusula Group By ayuda
básicamente a separar tu conjunto de
resultados en grupos, y puedes definir lo que
realmente se está separando. Y otra vez, vamos
a repasarlo y te lo mostraré. Entonces lo que vamos
a hacer es simplemente agregar una cláusula grupo por
al final de esto. Y digamos que
vamos a ir de nuevo al precio. Haremos promedio. Vamos a ir precio mínimo. Y voy a agruparlo por. Digamos sólo categoría. Entonces simplemente lo agrupamos por cualquier columna por la
que queramos agruparlo. En este caso, hacemos categoría. Y esto va a producir un resultado que probablemente
no sea tan útil todavía, pero de todos modos sólo voy
a hacerlo. Observe que no solo obtenemos
un precio mínimo ahora. Obtenemos cuatro precios mínimos. Ahora bien, esto no es
muy fácil de leer. Entonces lo que voy a hacer
aquí es simplemente escribir una segunda columna para tirar
junto al precio mínimo, y esa va
a ser sólo la categoría. Esto lo hacemos de nuevo. Ahora obtenemos algo que probablemente sea un poco más obvio
lo que estamos haciendo. Entonces con la cláusula de
categoría de grupo, estamos tomando el precio mínimo
para cada categoría de artículo. Y ese grupo por cláusula es muy útil para trabajador
con categorías, fechas, cualquier cosa que quieras, puedes empezar a separar tus datos y aún así
realizar agregaciones Cuando mencioné, no
puedes empezar a agregar más columnas
a la cláusula select. Solo puedes hacer la agregación y la columna en la que estás
haciendo la cláusula group by. Porque si agregaste
la tercera columna, tendrá más filas que estas dos columnas aquí que se
han producido, así
que realmente no funcionaría. Ya sabes, si
tuviera nombre de producto, junto a
esto, no funcionaría. Así que he mencionado las ventas. Entonces tengo aquí la tabla de ventas que aún no hemos explorado
realmente. Y pensemos en
lo que podemos hacer como un poco de agregación
y grupo por cláusula. Entonces voy a hacer solo
echemos un vistazo. Haremos el monto total máximo y lo
agruparemos por grupo por, digamos, ID de cliente. Y así, eso nos da el orden más alto que cada
cliente nos ha dado. Así que simplemente voy a escribir aquí ID de
cliente,
y vamos a ejecutar eso. Vamos a ordenar, también. Vamos a ordenar por lo que el ID de
cliente está enviando. Y en realidad, solo para que
esto sea un poco más agradable de ver, intercambiar el orden de esta ronda, estas son pequeñas cosas
que puedes hacer para tus resultados se establezcan un
poco más legibles, ordenar por, cambiar los
órdenes de las columnas, cosas así Y lo que terminamos con es ID de
cliente pedido de uno a seis, y tenemos el valor
máximo de pedido para cada cliente de
ese conjunto de resultados. Entonces puedes exportar esto, y, ya
sabes, dependiendo de ello, tal vez podrías enviarlo
al equipo de marketing y decir, Oh, cliente cinco, ya sabes, han tenido un pedido máximo de 500. Pero si
quieres entrar y decir, cuál fue el monto
total promedio que hicieron nuestros clientes. También
podrías hacer eso. Y aún así, sí, el cliente
cinco tiene un promedio, ya
sabes, un pedido de 280. Y nuevamente, podemos redondear eso, ponerlo entre paréntesis, agregar una figura redonda Eso lo hace un poco
más legible de nuevo. Y si, ese tipo de te
muestra como puedes usar las agregaciones junto a
la cláusula Group By Disfruto mucho metiendo
con las cláusulas del grupo B y los agregados
porque puedes obtener algunas ideas realmente
interesantes Y sobre todo a medida que comienzas
a entrar en el análisis de datos, este
tipo de grupos por y agregaciones son muy
útiles para realmente hurgar en los datos y
descubrir cosas que podrían no ser tan obvias cuando miras por
primera vez un Hagamos un ejemplo más. Veamos
cuántos pedidos ha dado
cada cliente. Y solo
podemos ejecutar esto. Y así
parece que todos han tenido dos pedidos
aparte del cliente seis. ¿Y eso es correcto?
Echemos un vistazo. Por lo que el cliente seis
solo ha tenido un pedido. Y si, eso es correcto. Aquí solo tenemos un pedido
del cliente seis. Y ahí lo tienes,
puedes empezar a ver lo poderoso que es eso. Digamos que tenías una
base de datos que funcionaba, ya
sabes, en ventas por día, podrías empezar a hacer, ya sabes, seleccionar conteo de ventas y
luego agruparlo por la fecha. Entonces podrías obtener, ya sabes, un recuento de cada fecha y
tener un número de ventas, cuántas ventas se
hicieron en esa fecha, y luego puedes hacer, como, ya
sabes, un máximo
o promedio de ventas por cada fecha, cosas así. Entonces, sí, es súper
flexible y muy útil. Entonces ojalá eso
sea útil, sobre todo si empiezas a
trabajar ecommerce o big data y
cosas así.
16. Fundamentos de SQL Join: Hola, y bienvenidos de nuevo
a otra lección. Hoy, vamos a
estar cubriendo uniones. Ahora, las uniones son increíblemente importantes cuando
trabajas con SQL, ya que te permite
tomar diferentes tablas y fusionarlas para formar nuevas tablas que podrían tener diferentes insights de lo originalmente
podrías haber tenido. Es algo que es
muy poderoso y la razón por la que utilizamos bases de datos
relacionales Pero para ser honestos, es probablemente lo más avanzado que
estamos haciendo en este curso. Así que tómate tu
tiempo con este video y repasa también las
notas, porque para mí,
Join fue probablemente lo más confuso cuando estaba empezando a aprender SQL. Y la forma en
que lo superé fue solo leyendo notas y haciendo ejemplos
y experimentando por mí mismo. B, solo quiero
advertirte en esta lección que probablemente
sea lo más
avanzado que vamos a hacer. Dicho esto,
vamos a meternos en ello. Entonces para esta lección
en particular, voy a pedirles que
copien y peguen esta codificación. Similar al inicio
del curso, todo lo que esto va a hacer es
agregar un par de mesas. Se va a agregar una
tabla de correos electrónicos y una tabla de usuario. Y estas son dos
tablas básicas que
vamos a utilizar para
demostrar las uniones. Y claro, este código
estará en los recursos de la lección. Y una vez que hayas corrido este código, solo recuerda
actualizar tus tablas, y debería aparecer aquí. Derecha. Antes de hacer
cualquier tipo de codificación, hablemos de qué son las uniones. Así que las uniones en SQL permiten
unir filas de dos o más tablas usando una columna mutua. Lo importante que hay que
saber es la columna
mutua entre tablas. Esto es lo que
nos permite unirnos a ellos. Entonces echemos un vistazo a nuestras
dos mesas aquí. Tengo la tabla de usuarios.
Vamos a escribir eso. Tenemos un ID de usuario y un nombre, y luego correos electrónicos
tenemos ID de correo electrónico, ID usuario y correo electrónico. Ahora bien, si notas
entre estas dos mesas, sí
tenemos una columna mutua.
Volvemos a los usuarios. Tenemos ID de usuario, y luego dentro de
la tabla de correos electrónicos, también
tenemos ID de usuario. Entonces aquí es donde
podemos realizar un join. Podemos realizar una unión utilizando el ID de usuario como nuestra
referencia para las reglas. Y en mi experiencia,
la mejor manera de visualizar uniones es
con el diagrama VN. Entonces, en el diagrama VN, cada círculo representa una tabla. Digamos de nuestras dos tablas, la izquierda es la tabla del usuario y la derecha es
la tabla de correos electrónicos. La sección en el
centro del diagrama representa las filas que
coinciden en ambas tablas. Ahora con ese diagrama en mente, pensemos en
cómo podemos escribir nuestra primera unión SQL. Ahora vamos a
empezar simplemente con seleccionar todo y luego de. Y ahora vamos a
seleccionar la mesa de la izquierda. Entonces en este caso,
van a ser usuarios. Y luego vamos
a escribir join y luego la
tabla de la derecha, que son los correos electrónicos. Así que tenemos nuestra mesa izquierda
y derecha aquí, y luego tenemos que definir a qué nos estamos uniendo realmente. Así que sólo vamos
a poner en la palabra clave, y luego tenemos que escribir
en usuarios punto ID de usuario. Y lo que esto está definiendo
es en primer lugar los usuarios de la tabla, y luego con este punto,
vamos a entrar y luego seleccionar la columna de ID de
usuario. La razón por la que tenemos que
ir específicos con el nombre de la tabla es porque
vamos a agregar un igual, y vamos a escribir
correos electrónicos dot user ID. Entonces hay dos ID de usuario, así que necesitamos
definir realmente cuáles de estos provienen de qué
tabla, si eso tiene sentido. Y que ahí está
tu incorporación básica. Ahora, antes de ejecutar
esto, necesitamos
definir qué tipo de
unión estamos haciendo. Entonces hay cuatro
uniones principales que hacemos. Ahí está la unión interior, izquierda,
derecha y completa, y los tengo
aquí abajo para que los puedas
leer a medida que avanzamos. El básico es una unión interna, que devuelve los registros
que coinciden con ambas tablas. Una buena manera de visualizar esto
es con el diagrama VN, es solo esa sección intermedia que cruza
las dos tablas Para que podamos entrar a unirse, y esa es nuestra consulta final. Entonces lo que vamos a
hacer aquí es seleccionar todas las columnas de la tabla de
usuarios y correos electrónicos. Nos estamos uniendo en el ID de usuario, y solo vamos a estar
tirando de los rollos mutuos. Así que vamos a ejecutar esto. Y ahí vamos. Tenemos
nuestras dos mesas unidas. Y luego solo un recordatorio,
tenemos al usuario, que es literalmente
un nombre de identificación de usuario, y luego nuestros correos electrónicos
son solo correos electrónicos. Pero con esto, hemos generado una nueva tabla que tiene
tanto el nombre como el correo electrónico. Y aquí arriba en la causa selecta, podemos ser un poco más específicos con las
columnas que estamos tirando. Y nuevamente, debido a que en realidad
estamos usando dos tablas en esta consulta, necesitamos definir de qué tabla proviene
cada columna. Así podemos hacer esto los usuarios puntean NAM y luego los correos electrónicos dot email. Así que estamos tomando la columna de
nombre de la tabla del usuario y la columna de correo electrónico de
la tabla de correos electrónicos. Y si volvemos a ejecutar esto, entonces solo obtenemos un nombre y un correo electrónico, y esa es tu combinación interna
básica. A continuación, tenemos el join de la izquierda. El join izquierdo, como
podemos ver aquí, devuelve todos los registros
en la tabla de la izquierda. Por lo que va a
devolver todo de la tabla del usuario junto con cualquier registro que
coincida con ambas tablas. Y nuevamente, el diagrama VN será muy útil para
visualizar Entonces será la mesa izquierda completa, junto a cualquier intersección
de la mesa derecha. Y si ejecutamos esto, obtenemos
este siguiente resultado. Entonces aquí están los resultados
de la unión izquierda. Tenemos algunas filas extra. Tenemos a Hank,
Frank y Diana. Ahora lo interesante de
esto es que no
tenemos ningún correo electrónico o ID de correo electrónico o ID de usuario dentro de la
tabla de correo electrónico para estas filas gratuitas. Y por
eso, en
realidad estos no fueron incluidos
en la unión interna. Pero con el join izquierdo,
porque estos están en la tabla del usuario, existen. Entonces estos tres
ID de usuario, Hank, Frank
y Diana, en realidad no
existen en la tabla de correos electrónicos Si buscas ocho, seis
y cuatro, en realidad no
existen en la tabla de correos electrónicos. No obstante, sí existen
en la tabla de usuarios, que es la tabla de la izquierda. Por lo tanto, están
incluidos en el join de izquierda. Lo mismo
va exactamente para la unión correcta. Entonces, si ejecutamos esto,
podemos ver que aquí hay dos correos electrónicos que no
existen en la tabla del usuario,
sin embargo, siguen incluidos
en estos resultados. Y nuevamente, el diagrama VN
sería el círculo de la derecha, la mesa derecha junto a la intersección
con la mesa izquierda. Por último, tenemos el join completo, que es el diagrama VN completo, que es de todo, desde todas las tablas y registros
que coinciden con ambas tablas. Corremos eso, lo conseguimos todo. Ahí vas. Y eso es
lo básico de las uniones. Como dije, tal vez
tengas que tomarte un tiempo
para averiguar cómo funcionan la izquierda
y la derecha se unen. Estos dos, en particular, fueron bastante confusos para
mí al principio. Pero creo que así como
lo usas un poco más y más,
vas a conseguir el cuelgue de ello. Ahora, veamos un caso de uso
adecuado de un join. Vamos a ver la tabla de ventas
de
nuestra base de datos original
y juego de mesa original. Entonces, si ejecutamos esto, podemos
ver que esta tabla viene arriba. Ahora, como pueden ver,
no tenemos mucha información,
para ser sinceros. Tenemos alguna
fecha de venta y monto de venta, monto total de
ventas, pero, ya sabes, ID de
venta, ID de cliente, ID producto. Estos
no son muy útiles. Al igual que, si hubiera
miles de productos, ¿cómo sabría qué
producto ID cinco es? Y ¿cómo sé qué es la identificación de
cliente cuatro del cliente? Ahora bien, esto es lo divertido. De hecho, tenemos ID de cliente e ID de producto en tablas
separadas. Si miramos a los clientes, tenemos una identificación de cliente aquí y productos.
Contamos con ID de producto. Así que tenemos todo lo
que necesitamos para empezar a unirnos nuestra mesa de ventas y hacer una especie de
tabla más útil con eso. Entonces voy a comenzar con una declaración select como siempre, select star, from, y
la mesa de la izquierda, vamos a hacer clientes. Y vamos a hacer una unión interior. Y luego necesitamos
usar la tabla de ventas. ¿Y en qué nos unimos a estos? Entonces necesitamos encontrar la manera de
unir estas dos mesas. Y ¿cuál es la columna
mutua para la mesa de clientes y ventas? Bueno, es el
punto de clientes ID de cliente. La columna ID del cliente existe tanto en la
tabla del cliente como en la tabla de ventas. Pero como estamos haciendo
las cosas en dos mesas, necesitamos definir primero la tabla y luego la columna
que existe en esa tabla. Y nos estamos uniendo a eso
con un signo de igual con tabla de ventas, ID de cliente. Ahí vamos. Y si ejecutamos esto, recuperamos
mucha información. Obtenemos una
mesa bastante grande porque estamos uniendo dos mesas juntas
con todas las columnas. Pero si podemos ver, nos hemos unido, creo que la tabla de ventas empieza en la columna
ID de venta aquí. Así que tenemos nuestra mesa
completa de clientes aquí se unió a
nuestra tabla de ventas aquí. Así que ya podemos ver ahora John Doe fue venta ID número uno Así que ya hemos mejorado
nuestro uso para la tabla de ventas. Sin embargo, podríamos hacer más de
una unión, así que podemos hacer una segunda unión que nos muestre qué
productos pidieron. Así que vamos a entrar a unirnos. Y luego la tabla de productos. ¿Y cómo nos estamos uniendo a estos? Bueno, tenemos
ID de producto en la tabla de ventas, y también tenemos
ID de producto en la tabla de productos. Así que una vez más, vamos a ir producto punto ID de producto
es igual a ventas, ID de producto. Entonces, una vez más, estamos
usando el
ID del producto tanto en la tabla
de ventas como en la tabla de productos. Y vamos a correr eso. Esta va a ser una mesa muy
larga
porque son tres mesas
esencialmente unidas, pero tenemos nuestros nombres. Tenemos nuestras
órdenes. Y también tenemos ahora lo que ordenaron. Entonces tenemos el
nombre del producto, la categoría, precio, etcétera,
etcétera. Y ahí tienes. Entonces podemos ver que John Doe
ordenó dos ratones inalámbricos. Ratón, ratones, no lo
sé. Sí, ratones. Y ahora si no
quisiéramos esta tabla llena, podemos volver a nuestra cláusula
select y simplemente, ya
sabes, empezar a refinar eso. Entonces, digamos el nombre de los clientes , el apellido de los clientes. Después iremos, Hagamos
productos nombre del producto. Y luego vamos a
hacer vamos a hacer, sí, cantidad
de ventas. Monto total de ventas. Y aquí mismo será
probablemente una mesa bastante bonita, bonita que
puedes mandar a quien sea. Oh. Se perdió una R. Ve, tienes que revisar tu ortografía. Ese es solo otro ejemplo
de mi mal escribiendo todo el tiempo. Pero sí, si has escrito
todo correctamente, a diferencia de mí, deberías tener una mesa muy bonita
al final de esto Entonces tenemos a John Doe. Alambres ratón dos y
el total de la orden. Y que hay
un ejemplo adecuado de cómo se pueden usar uniones para crear un nuevo conjunto de datos usando datos existentes
en tablas separadas. Y eso vuelve a por qué las bases de datos de
relaciones son tan buenas porque no es
necesario tener una
tabla separada aquí para esto, lo que ocuparía
espacio en la base de datos. Simplemente puedes usar uniones para hacer esta tabla aquí y
luego enviarla o, ya
sabes, almacenar esto como una consulta, y luego simplemente ejecutarlo cuando
necesites esa tabla. Pero si, solo toma
un poco de tiempo solo averiguar cómo Pero
sí, solo toma un poco de tiempo averiguar qué tablas
van
a dónde y cómo
se une todo, pero solo será un caso
de prueba y error Y sí, solo probando
ejemplos por ti mismo. Y puedes usar el chat
GBT para simplemente generar nuevas tablas para
ti si solo escribes, ya
sabes, generar
una tabla simple en ya
sabes, generar
una tabla simple que pueda practicar se une
, y eso va a hacer Y puedes insertar eso en esto y
jugar con eso. Pero si lo voy
a dejar ahí. Eso es mucho para digerir. Ojalá, eso tenga sentido. Como dije, se une fue
lo que me hizo tropezar cuando
empecé a aprender, pero solo perseverar con ello, y eventualmente empieza
a ser cada vez más fácil
17. Insertar datos en tablas existentes: En este capítulo,
vamos a estar centrándonos en cómo podemos cambiar las
tablas reales en una base de datos. Entonces, cómo podemos insertar
nuevos puntos de datos, cómo podemos eliminar tablas, cómo podemos actualizar
los datos en tablas, y finalmente, cómo
podemos crear nuevas tablas. En esta primera lección, vamos a estar
hablando de cómo
podemos agregar filas a una tabla
existente. Así que he levantado
la tabla de productos, y digamos que nuestro
jefe nos ha dicho que ahora vamos a estar
vendiendo kits de batería y guitarras, y queremos
agregarlo a nuestra base de datos. Bueno, podemos usar
esta función aquí, podemos ver insertar en. Y esta es nuestra
función que utilizamos cuando queremos agregar rosa
a una mesa existente. Entonces después de esta
inserción en la función, queremos definir en qué
tabla estamos insertando. En este caso, es
la tabla de productos. Luego agregamos algunos
corchetes y solo agregamos las columnas a las que
queremos agregar datos. Vamos a agregar
datos al nombre del producto,
categoría, precio
y cantidad de existencias. Debido a que el
ID del producto es una clave primaria, puede ver que en el
PK entre paréntesis, se rellenará automáticamente. Así que no tenemos que
insertar manualmente ningún dato aquí. Crearé automáticamente un nuevo número de serie de ID de producto. Pero sí, podemos agregar todas las columnas aparte
del ID
del producto dentro de estos
paréntesis separadas por una coma Y entonces terminarás
con algo como esto. Así que estamos
insertando en los productos, y luego estamos
insertando en el nombre del producto, categoría, precio y cantidad
de stock. Estas son las columnas en las que estamos insertando algo. A la siguiente línea,
agregamos los valores de la palabra. Y aquí es donde
definimos realmente qué valores van a entrar en
estas columnas en nuestra nueva fila. Y solo agregamos algunos corchetes
después de la declaración de valor, y aquí es donde vamos
a sumar nuestros puntos de datos. Entonces, usando comillas simples, podemos agregar algunos valores. Ahora queremos prestar atención a lo que hay en nuestro primer
conjunto de corchetes porque queremos
asegurarnos de que nuestros puntos de datos
coincidan con las columnas. Entonces nuestra primera columna
es el nombre del producto, así que agregaremos el nombre
del producto aquí. Guitarra, separa
eso con una coma. Entonces tenemos categoría. Entonces solo haremos instrumentos. Coma. El precio dirá 29999 Y por último, la
cantidad de existencias dirá 50. Para que puedas ver cómo funciona
ese tipo de cosas. Tenemos nuestra primera
línea que define el orden de las columnas y cómo
van a actualizarse, y luego vamos agregando cada valor la columna
a medida que avanzamos. Entonces tenemos
nombre del producto, guitarra, categoría es instrumentos,
precio 300, cantidad de stock 50. Y si ejecuto esto
ahora, insertaría una sola fila al
final de esta tabla. Pero en realidad puedes agregar
más de una fila a la vez. Entonces voy a simplemente poner
una coma al final de esto para ir a la nueva línea
y algunos nuevos corchetes Y podríamos hacer lo
mismo. agregar algunos valores más. Entonces veremos kit de batería. Está en la misma categoría de
instrumentos. Se puede ver que el precio es de 1,000. Y finalmente, la cantidad
de stock es solo 15 porque los kits de
batería son grandes. Terminaremos esa declaración
con el punto y coma. Ahí vas. Es
lo mismo. acabamos de separar
estas declaraciones Aquí acabamos de separar
estas declaraciones entre paréntesis con una coma.
Y ahí tienes. Este código agregará ahora dos
filas a la tabla de productos, la fila de guitarra y
la fila de batería. Así que vamos a ejecutar
eso. Ahí vamos. Tenemos nuestro
mensaje aquí insertar, y tiene un número
dos,
lo que significa que está insertado dos filas. Y si selecciono
todos de los productos, deberíamos tener dos filas más en la parte inferior. Kit de guitarra y batería. Ahí vamos. Tiene nuestra
información correctamente puesta. Me doy cuenta de que mi ID de producto probablemente
será
diferente al tuyo, y eso es porque
he seguido adelante y eliminé y agregué filas
varias veces. Entonces, de la manera en que esto
funciona, siempre
tendrá un nuevo número. Entonces el tuyo
probablemente será de 11, 12. Pero si tuvieras que
eliminar estas dos filas y agregar más filas, entonces serían 13, 14,
etcétera, etcétera No puedes tener repeticiones
del mismo ID de producto, por lo que siempre generará
algunas nuevas para ti. Así que no entres en pánico si es
diferente para ti. Pero sí, así es como agregas
datos a tablas existentes. Ahora vale la pena señalar
que no es necesario agregar todas las columnas de una tabla en esta primera
inserción en declaración. Digamos que no conocías
la cantidad de stock, no
tuvimos que
agregarlo si no lo
sabíamos .
Podemos deshacernos de eso. Y entonces si también nos deshacemos de él en la declaración de valor, podríamos ejecutar esto, y
terminaría sin información de cantidad de stock en estos dos cuadrados
en la parte inferior de aquí. Sin embargo, a veces las columnas
deben estar pobladas. Esto se debe a que no
queremos una tabla de productos que no tenga información
sobre el nombre del producto, por ejemplo, o que no tenga
información sobre el precio. Y a estas pequeñas
reglas las llamamos limitaciones. Hablaremos
más a fondo sobre las restricciones cuando estemos
creando tablas. Pero por ahora, si vamos
al explorador de objetos, haz clic
derecho y vamos a las propiedades de la tabla de
productos. Y luego solo entra en columnas. Ahora bien, si miramos
esta columna no ahora, podemos ver que hay
tres columnas marcadas, y estas son las columnas que
tienen que tener
información en ellas. Entonces eso significa que podemos
dejar la categoría y detener la cantidad en blanco. Entonces volvamos a
nuestra declaración y digamos que no tenemos la categoría. Podemos simplemente ir
nombre del producto y precio. que podamos deshacernos
de nuestra categoría aquí en nuestra declaración de valor, y por decir, digamos,
micrófono y cables. Y solo quieres
repasar eso, asegurarte de que se vea bien, y no haya comas adicionales
ni comillas adicionales Eso me queda bien.
Y si ejecuto esto ahora, echemos un vistazo. Ahí vamos. Ha funcionado, y solo
seleccionamos todos los productos. Bajamos. Ahí vamos.
Tenemos micrófono y cables, y sin embargo la categoría es nula. Pero lo interesante
es la cantidad de existencias, aunque no
pusimos ningún dato, está por defecto a cero Y eso será algo que esté diseñado
dentro de la mesa. Entonces si volvemos a la tabla de
productos aquí arriba y vamos a propiedades,
y miramos columnas. Podemos ver que la cantidad
de existencias de
hecho tiene un valor
predeterminado, cero. Pero si borramos eso y
luego volvimos a ejecutar la consulta, esto también sería nulo,
como la categoría. Pero sí, solo quiero
mostrarte que no tienes que
añadir valores en
cada columna. Como dije, vamos a estar
tocando restricciones
en más lecciones,
así que no te preocupes.
18. Eliminar datos de tablas: Bien, así que la
lección anterior sobre insert y todo el tipo de restricciones
diferentes
en las mesas fue bastante intensa Entonces en esta,
solo quiero hacer una agradable lección de chill sobre
la función delete. La función delete
es solo una forma eliminar filas de una tabla. Y puedes especificar qué
filas usando filtros, como lo hemos hecho antes
cuando seleccionamos ros. Entonces digamos que
nuestro jefe ha cambiado opinión y ya no
vendemos equipo musical. Tenemos que deshacernos de
estas filas libres aquí. Tenemos que deshacernos
de la fila de batería,
la fila de guitarras y
la fila de micrófonos. Entonces, ¿cómo eliminamos estas
filas de la tabla? Bueno, empezamos con
esta frase aquí, borre. Desde y en este caso, estaremos eliminando de
la tabla de productos. Y solo usamos nuestro filtro de ware, y aquí es donde
definimos qué filas se van a eliminar. Entonces, pensemos en
las diferentes formas en
que podemos hacer esto. Solo podemos mirar
los roles que
queremos eliminar y podemos usar cualquiera de los atributos que están asociados a
este rol para eliminarlo. Comencemos con eliminar
el rol del micrófono. Una buena manera de
hacerlo es usando el ID del producto porque
eso es exclusivo de ese rol, y significa que
no hay duplicados que se van a eliminar ni
nada por el estilo Va a ser
solo esa fila. Entonces podemos hacer esto. Eliminar de
productos donde el ID del producto sea igual a 17. Nosotros dirigimos eso. Y si ejecutamos eso,
se borra una fila, vuelve con
esa salida ahí. Y si seleccionamos
de todos los productos, veremos que la
fila del micrófono ha sido eliminada, y esto es un cambio
permanente la tabla y la base de datos. Ahora echemos un
vistazo a cómo podemos eliminar la batería
y las filas de guitarra. Bueno, como antes, podemos usar el ID del producto así, 13. Si ejecutamos esto ahora,
eliminaría la fila de la batería. Pero entonces si queremos
acelerar eso, podemos hacer múltiples
eliminaciones al mismo tiempo En este caso, podrías
usar la columna de categoría para filtrar nuestra eliminación, porque
las únicas que están en la categoría de instrumento son
las que queremos eliminar. Alternativamente, puede
ceñirse al ID del producto. Si desea eliminar varias
filas al mismo tiempo, podría
comenzar a
usar la cláusula in. O si quieres ponerte elegante,
puedes empezar a usar la lógica, dependiendo de la
situación en la que te encuentres. Puedes usar la
función o o la y si quisieras
ser más específico con
lo que estás borrando, Esto también funcionaría aquí, pero me voy a quedar
con la cláusula in. Yo sólo voy a ejecutar
eso. Y aquí vamos. Ha vuelto con Eliminar dos, así que eso se borra dos filas. Y si ejecuto
eso, ahora está
regresando con nuestras diez filas originales. Entonces ahí tienes. Así es como
se eliminan las filas de las tablas. Entonces ahora ya sabes cómo insertar datos y eliminar datos también. Entonces, ¿por qué no
jugar con insertar datos en una tabla y
luego eliminar esos datos?
19. Edición de datos en tablas: Además de insertar y eliminar filas y
datos de tablas, también
podemos actualizar y cambiar los
valores existentes dentro de la tabla. Podemos hacerlo usando el comando
update table. Esto es útil si
desea realizar algunos cambios permanentes en una tabla
existente en una base de datos. Puede haber un
caso en el que esté
cambiando permanentemente el precio de un
producto o tal vez esté cambiando el correo electrónico
permanentemente para un cliente o tal vez un cliente
se casó y quiera
cambiar su apellido
dentro de la base de datos. No hace falta decir
que actualizar tablas y datos es una
parte integral de lo que hacemos. Por lo que es importante
aprender cómo lo hacemos. Entonces veamos
cómo podemos actualizar algunas cosas en la tabla de
productos. lo que vamos
a empezar es la sencilla actualización de comandos. Después de esto, definimos qué
tabla queremos actualizar. Entonces en este caso, es
la tabla de productos. A continuación, escribimos el comando set, y dentro de este comando es
donde vamos a definir qué columnas están cambiando y qué estamos cambiando
dentro de esas columnas. Entonces, pensemos en
lo que queremos cambiar. Digamos que queremos cambiar el precio del escritorio de pie, y ha subido de valores. Ahora son 300 libras. Todo lo que tenemos que hacer es escribir
el precio establecido es igual a 300. Ahora bien, es importante
que aún no ejecutemos nada porque
si solo ejecutamos
esto, establecería
cada punto de datos dentro de esta columna en 300. Lo que queremos hacer
ahora es definir qué papel queremos establecer
realmente este precio. Entonces queremos agregar una cláusula Ware. Y como de costumbre, uno genial para usar es el
ID del producto para filtrar. Entonces digamos, sí, identificación
del producto para el escritorio de
pie, que es la fila que
queremos cambiar es diez. Así producto. Entonces ahí vamos.
Eso lo hemos reducido. Entonces solo estamos
cambiando el precio a 300 donde el
ID del producto es igual a diez. Y en este caso, bajamos. La identificación del producto diez es el
escritorio de pie, que es correcto. Ese es el que
queríamos actualizar. Entonces solo voy a
destacar y ejecutar esto y ahí vamos. Hemos actualizado uno,
actualizado una fila. Y si seleccionamos todo
de los productos nuevamente, ahora
tenemos el
precio actualizado para el escritorio de pie. Podemos volver atrás y
cambiarlo
al valor original si el
precio vuelve a bajar. Y una vez más, tenemos 250. Y ahora no hace
falta decir que podemos actualizar más de una
cosa a la vez. Entonces en la cláusula set, podemos agregar una pequeña coma aquí, y podemos agregar otra cosa Entonces digamos que queremos cambiar la categoría
a otra cosa que decir muebles de
oficina en lugar
de solo muebles. Y, sí, podemos ejecutar eso. Hemos actualizado una
fila, eso es correcto. Y si nosotros y
corremos y si solo
seleccionamos todo, desde productos
nuevamente y
ejecutamos eso, ahora tenemos una
categoría actualizada a muebles de oficina. Y nuevamente, de verdad
quiero recalcar, si me deshice de este filtro
e hice esto y lo ejecuté, cambiaría
todo en la mesa. Entonces todo se
fijaría al precio 250, y cada categoría terminaría siendo muebles de
oficina. Así que quieres tener mucho
cuidado y
tener siempre algún tipo de filtro
cuando estés actualizando los datos. Obviamente hay innumerables usos para cómo podemos actualizar los datos, pero uno bueno es, ya sabes, si hay un
error ortográfico en una categoría, solo
puedes decir dónde categoría equivale a
lo que está mal escrito,
y puedes cambiarlo aquí
a la ortografía correcta Y, por supuesto, con
la cláusula Ware, puedes ser tan creativo
como quieras con el filtrado y lo que realmente
estás actualizando
dentro de la tabla. En este caso, estamos
actualizando por ID de producto, lo que cambia un rol, pero podrías hacer
lo que quieras. Podrías cambiar
las cosas por categoría, por precio, por cantidad de stock, donde quieras,
podrías cambiarlo. Y esa es una
guía básica sobre cómo puedes actualizar los datos existentes en una tabla. Ahora, soy consciente
de que hay mucha información nueva
en este capítulo, especialmente todas las nuevas
palabras clave como actualizar, establecer, valores, eliminar, insertar,
todas estas cosas. Pero como siempre, la hoja de trabajo y la hoja de referencia
estarán ahí para guiarte, y podrías usar eso cuando empieces a escribir
tu propio código. Como siempre, la mejor
manera de aprender estas cosas es simplemente
haciendo y probando, viendo lo que funciona, ver
lo que no funciona. Y honestamente, esa es
la mejor manera que aprendo.
20. Crea nuevas tablas/restricciones: Bien. En esta lección,
quiero platicar un poco más sobre cómo creamos
tablas en SQL. También quiero hablar un poco
más sobre las restricciones de mesa. Además, hacia el
final de la lección, vamos a estar viendo
algunas formas rápidas de hacer
las cosas que hemos estado
haciendo en este capítulo. Puede haber algunas
formas más rápidas de agregar tablas, cambiar esas tablas y agregar datos a esas tablas también. este momento, solo quiero
centrarme en el código porque sin la
comprensión fundamental del código, tiene sentido hacer las formas más rápidas porque
realmente no se obtiene una comprensión de lo que
está sucediendo a nivel básico Por ahora, solo
vamos a enfocarnos en cómo
agregamos tablas usando SQL. Ahora bien, si has leído un
poco el código que copiamos y pegamos al
inicio del curso, para crear una tabla,
simplemente agregamos este comando. Genial. Mesa. No podría ser más sencillo.
Y lo que tengo aquí es solo una hoja Excel de
información sobre autos. Entonces esto podría ser como la información de
tu flota, así que los autos que están
funcionando en tu empresa. Entonces vamos a usar este
conjunto de datos para hacer una nueva tabla. Y esta hoja de Excel estará en los recursos de la lección para
que la descargues y uses. Pero por ahora,
llamemos a esa flota de mesas. A continuación, solo vamos
a agregar algunos corchetes, y aquí es donde vamos
a definir nuestros nombres de columna, los tipos de datos de esas columnas y cualquier restricción en una tabla. Lo bueno de
tener un conjunto de datos ya aquí es que solo podemos copiar los nombres de las columnas
de esta hoja de Excel. Entonces voy a seguir adelante y solo hacer eso,
enumerar estos. Entonces tenemos hacer modelo. Año kilometraje, combustible
y último usado. Esas son todas las columnas que
existen dentro de la hoja de Excel. Asegúrese de que
estos coincidan con la hoja de Excel porque esto
será importante más adelante. Junto a estas columnas,
quiero agregar otra. Solo quiero decir una identificación de auto, y esta será nuestra columna clave. Entonces tenemos todas nuestras columnas
que queremos en la tabla. A continuación, necesitamos definir qué es
cada columna en términos
de su tipo de datos. Ahora, en los recursos de la lección, te
daré un enlace
a este sitio web aquí, que es el sitio web oficial PostGress SQL
AKAPG Admin, y te da una lista
de todos los tipos de Entonces dependiendo de lo que necesitemos, podemos usar cualquiera de
estos tipos de datos. mayor parte del tiempo
estarás usando Varcar
que es una cadena de
caracteres de longitud variable, esencialmente texto, y
también usarás entero,
que es números También puede haber algunas
otras cosas que
usarás como el día calendario, y esto está en el
formato año mes día. Otro que
usaremos es serial, y lo usaremos
con la columna clave. Y lo que hace Serial es que, como hemos visto en el pasado,
agrega un número cada
vez que agregas una fila. Entonces, a medida que sigas agregando
valores a esta tabla, estaremos generando un número
clave único cada vez. Para que puedas tener un
vistazo a esta lista de tipos de datos. Obviamente, aquí hay montones. Probablemente no
necesitarás todos estos. Pero sí, solo concéntrate en los que puedas
necesitar como serial, integer, y carácter variable,
y tal vez fecha también. Así que volvamos a nuestra instrucción de tabla
correcta y definamos qué tipo de datos será
cada columna Entonces la identificación del auto, esa
será nuestra columna clave. Entonces queremos que eso sea
un tipo de datos serie. El make será de
carácter variable, así. De igual manera, el modelo, ese será Varcar porque es solo texto El año, voy a
hacer de eso un entero. De igual manera, con el kilometraje. El combustible, eso es solo lo
del pase de texto. Si volvemos a mirar, solo
tenemos texto. Entonces haz ese varcar y
último usado en esta columna, es un formato de fecha, así que
usaremos esa fecha Ahora, podríamos ejecutar este código, y crearía la
tabla con éxito, y tendría
todas las columnas con los tipos de datos correctos. Pero lo que queremos hacer es sumar
algunas limitaciones a esto. Por lo tanto, las restricciones se utilizan para especificar reglas para los
datos dentro de una tabla. Y lo que tengo aquí
en este comentario son algunas de las principales
limitaciones que podríamos usar. Tenemos la restricción not
Null, lo que significa que la columna
debe tener datos. Tenemos la restricción única. Todos los valores de una columna
deben ser diferentes. La instrucción de clave primaria
define la clave primaria, y hace que la columna no nula y única
al mismo tiempo. Las restricciones de verificación son realmente útiles porque se puede establecer un criterio específico para la columna que se debe
cumplir con el fin de agregar datos. Entonces vamos a agregar
una restricción de verificación al kilometraje, por ejemplo, porque un kilometraje no
puede ser menos, así que vamos a asegurarnos de
que cada cosa que
entra en esta columna de kilometraje
sea superior a cero. Y también podemos agregar una restricción
por defecto, que establece un
valor predeterminado a la columna. Entonces, sigamos adelante y
veamos lo que tenemos que hacer. Así que vamos a
asegurarnos de que la
identificación del auto sea la clave principal, para que podamos copiarla y pegarla justo después del
tipo de datos, así. Y eso
asegurará que la
identificación del auto sea del tipo de datos en serie, pero también la clave principal. La marca y el modelo, queremos
asegurarnos de que
siempre haya una marca y un modelo
dentro de la columna. Entonces vamos a hacer que eso
no sea nulo para ambos. El año, no demasiado
alborotado por eso, podemos
dejarlo como está El kilometraje, queremos
asegurarnos de agregar un cheque, y luego dentro de estos paréntesis, agregamos lo que queremos verificar. Entonces en este caso, el kilometraje. Es mayor que cero. Me acabo de dar cuenta de que
accidentalmente escribí
kilometraje en lugar de entero
para el tipo de datos Entonces no hay ningún tipo de datos de kilometraje. Eso sólo quiero aclararlo. Lo siento, eso es solo
porque me he quedado sin café y hoy no me he
tomado mi café. Pero sí, asegúrate de que ese sea
el tipo de datos correcto. Entonces el kilometraje es un tipo de datos
entero. Entonces sigamos adelante y ejecutemos
esto. Entonces ahí vamos. Acabamos de ejecutar eso y
regresamos con éxito. Y lo que tenemos que hacer es
bajar al Explorador de objetos, clic
derecho, actualizar,
y ahí vamos. Tenemos nuestra flota. Y
lo que voy a hacer es seleccionar todo de flota. Y voy a ejecutar
eso,
no habrá datos porque no hemos
agregado ningún dato a la tabla, pero sí tenemos nuestras
columnas todas instaladas. Ahora aquí es donde podemos
comenzar a hacer nuestra consulta de inserción, donde insertamos y
agregamos los datos manualmente. Pero lo que les voy a mostrar
aquí es cómo podemos tomar este Excel y simplemente
importar los datos rápidamente. Entonces lo que vamos a hacer es simplemente así que solo
vamos a hacer
clic derecho y subir a
importar y exportar datos. Y vamos a
entrar en nuestro nombre de archivo aquí y simplemente elegir
el archivo CSV. Quieres asegurarte de
que es un archivo CSV. No quieres usar un archivo Excel porque no
va a funcionar. Tengo que ser CSV. Una vez que
tengas tu archivo, vamos a ir
a Opciones y
asegurarnos de que la comunicación esté seleccionada, y luego veamos las columnas. Ahora, las columnas a exportar, no
queremos agregar ID de tarjeta porque eso no está
en realidad en nuestra hoja de Excel. Acabamos de agregar eso
a nuestra tabla para nuestra referencia cuando estamos haciendo columnas
clave y
combinaciones o lo que sea. Así que solo deshazte de eso, y entonces deberías
estar listo para irte. Sólo vamos a hacer
click Bien. Y después unos momentos debería
decir proceso completarlo. Y si selecciono todo de la flota y
lo ejecuto, ahí vamos. Tenemos nuestra mesa totalmente
poblada. Y como puedes ver, la identificación del auto ya
está poblada
para nosotros amablemente. Y esa es una forma muy rápida de agregar una gran cantidad de datos, especialmente si estás
usando hojas de Excel Así que sí, solo
asegúrate de que estás usando un archivo CSV y que las columnas coincidan en
términos de sus nombres, y estás seleccionando las columnas correctas cuando
estés importando. Y como puedes imaginar, eso ahorra mucho
más tiempo en comparación con escribir inserto para
cada uno de estos roles. Pero, sí, eso es lo básico importar datos usando Excel. A continuación, quiero
mostrarles algunos atajos ahora sobre cómo podemos crear tablas, cambiar esas tablas,
etcétera, etcétera Y la razón por la que no te
mostré esto al inicio del capítulo es
porque quería
que tuvieras la comprensión
del código en sí y cómo
agregamos tablas y cambiamos
esas tablas usando SQL. Es importante entender los procesos que
ocurren en segundo plano porque es posible que
no siempre tengas esta ventana de crear tabla, y es posible que tengas que hacerlo
manualmente usando el código. Pero he renunciado al secreto. Si da clic derecho sobre
tablas crear tabla. Tienes una bonita ventana, que básicamente hace lo
mismo que lo que
hemos hecho en el código. Así podemos nombrar nuestra
mesa. Podemos agregar columnas usando este
plus aquí, Columna uno. Podemos cambiar rápidamente cuál es ese tipo de
datos. Entonces llamémoslo serial. Podemos agregar restricciones aquí, clave
primaria y no ahora. Y podemos hacer esto por
tantas columnas como queramos. También podemos entrar en restricciones, y podemos entrar en restricciones de
verificación, y podemos agregar
restricciones de verificación de esta manera. Podemos simplemente llamar a este cheque uno. Y entonces lo que
escribes aquí es lo que
escribimos entre corchetes para que podamos hacer, ya sabes,
algo como esto Puede agregar muchas restricciones
diferentes y cambiar los parámetros. Todo esto es algo bastante
avanzado. No necesitas saber
demasiado sobre esto. Pero por último, obtienes,
al final un código
generado para ti. Y sí, me doy cuenta de lo fácil que es esto, pero claro, ahora puedes leer ese código SQL y entender lo que está pasando en lugar de solo
usar esta tabla y simplemente meterla
ciegamente. Y, por supuesto, podemos hacer click
derecho e ir
a las propiedades
de una tabla existente, cambiar los nombres de las columnas,
cambiar los tipos de datos. Pero también hay un comando
aquí si hacemos clic derecho, podemos ir en los
scripts, y luego tiene algunas
plantillas que podemos usar. Entonces si queremos insertar datos, podemos subir a esto
e insertar script. Y va a generar básicamente
una plantilla que podamos usar, y luego podemos simplemente puñetear en nuestros valores donde están estos signos de
interrogación. Y sí, esto es mucho más fácil, y lamento haber dejado esto
hasta el último minuto. Pero es justo la forma en
que quería enseñarte, y probablemente me vas
a odiar por eso. Y sí, hay crear,
seleccionar y establecer actualización, y eliminar scripts que puedes usar que son geniales como plantillas. Pero sí, es bueno saber cómo están funcionando
realmente estos. Pero sí, voy a
dejarlo ahí por ahora. Ahora ya sabes cómo crear
una tabla usando código QL, pero también cómo hacerlo en
el software PG admin Ahora también sabes cómo
importar grandes trozos de
datos como
hojas de Excel a PG Admin, usando la opción import export Pero sí, diviértete, haz algunas tablas, crea restricciones, ve si puedes agregar datos
o cuándo puedes agregar datos, y sí, diviértete con ellos.