SQL AVANZADO, Prueba Técnica para PROGRAMADOR BackEnd 🤘

Поделиться
HTML-код
  • Опубликовано: 27 ноя 2024

Комментарии • 118

  • @hdeleonnet
    @hdeleonnet  Год назад +16

    Mis cursos de Programación: hdeleon.net/cursos-premium/
    La consulta del video:
    SELECT D.name as Department, E.name as Employee, E.salary as Salary
    FROM Employee as E
    INNER JOIN Department as D on D.id = E.departmentid
    WHERE E.salary IN
    (SELECT SWN.salary
    FROM
    (SELECT e.salary,
    ROW_NUMBER() OVER(ORDER BY salary DESC) AS number
    FROM (
    SELECT DISTINCT e2.salary
    FROM Employee as e2
    WHERE e2.departmentid= D.id
    ) as e
    WHERE e.departmentid= D.id
    ) as SWN
    WHERE SWN.number

  • @DannyFJhonstonB
    @DannyFJhonstonB Год назад +55

    Sí, más vídeos de SQL avanzado, por favor!!! 🔥🤘🏻

  • @solpropyme5360
    @solpropyme5360 Год назад +59

    Excelente idea esta de resolver esos casos más complejos, voto por que sigas con más ejemplos👏👏👏

    • @ferhf824
      @ferhf824 Год назад +3

      se aprende mas xD q en cursos de 1 hora

  • @emprendedormex8569
    @emprendedormex8569 Год назад +9

    Este tipo de contenidos deberían tener mucha más difusión sin duda, muchas gracias por tu esfuerzo !

  • @azarelzaleta7619
    @azarelzaleta7619 Год назад +10

    Creo que nunca te había comentado Héctor, pero muchas gracias por todo tu contenido, te sigo desde que estaba en la prepa y ya terminé mi carrera este año y empecé a ejercer en mi primer trabajo, gracias por tanto, nunca se termina de aprender !

  • @edgarduriarte75
    @edgarduriarte75 Год назад +7

    Excelente, también sería un group by por departamento y salario, posteriormente a ese resultado le haces un rownumber con partition, por departamento, y ya con eso ordenas los 3 primero, y un where solamente coges los 3 de cada país y ya, excelentes videos, el mejor canal 👌

  • @Jhgar1
    @Jhgar1 5 месяцев назад +3

    Muy buen video, hallé una manera más sencilla de resolverlo usando DENSE_RANK y PARTITION BY pero basándome en tu solución:
    SELECT Department, Employee, Salary
    FROM
    (SELECT D.name AS Department, E.name AS Employee, E.salary AS Salary,
    DENSE_RANK() OVER (PARTITION BY D.name ORDER BY E.salary DESC) AS row_num
    FROM Employee AS E
    INNER JOIN Department AS D ON E.departmentId = D.id) AS top_3
    WHERE top_3.row_num

  • @lopuma1990
    @lopuma1990 Год назад +3

    No es difícil, más bien hay que entender los que nos piden, si se entiende bien lo que se pide seguramente se puede lograr, aún así gracias por el detalle del vídeo

  • @ProgramacionEnGeneral
    @ProgramacionEnGeneral Год назад +3

    Que buen vídeo, quedaría mucho mas limpio utilizando "With" para identificar fácilmente las tablas de las subconsultas

    • @kevinleivacoto
      @kevinleivacoto Год назад +3

      Pensé lo mismo jajaja, pero bueno así también se da visualización a subconsultas un poco más compejas, por si en algún momento trabajan con SnowFlake, o BigQuery y quieran usar una subconsulta para json, o tipos de datos semi estrucrurados, aunque soy fiel defensor de los CTE, esta forma también es buena para que personas que no se dediquen a SQL comos los Data Engineers y los Data Analyst puedan mejorar habilidades

  • @mauriciogutierrez448
    @mauriciogutierrez448 Год назад +2

    hace tiempo yo tambien hubiera dichoque es es dificl, ya que no conocia mucho sobre sql. ahorita que lo vi la verdad esta facil pero ya por la experiencia. muy bien explicado espero mas videos de sql.

  • @michael19m48
    @michael19m48 Год назад +1

    Gracias por el video, por favor sigue subiendo más videos sobre SQL.

  • @walkmav8
    @walkmav8 Год назад +1

    Aún no veo el video y tengo la adrenalina como si fuera ver un estreno en el cine

  • @ulyses1018
    @ulyses1018 Год назад

    gracias por el tutorial amigo, mi mente exploto con todo lo que se puede hacer dentro de sql

  • @elycode1173
    @elycode1173 Год назад +2

    Si, mas videos de SQL avanzado :) Chingon Hector, gracias.

  • @csaraviat
    @csaraviat Год назад +1

    de verdad que en ese ejercicio me hiciste recordar medio ciclo de curso

  • @mijucode5637
    @mijucode5637 Год назад +3

    No la hubiera podido resolver, ya aprendí mucho!!!! Gracias x el gran contenido!!!

  • @oscaregt2
    @oscaregt2 Год назад

    Wow siempre aprendo más de tus videos. Eres un crack. Muchas gracias por compartir tus conocimientos

  • @GorbashCodec
    @GorbashCodec Год назад

    Hermano saludos desde Venezuela, Excelente video. Gracias por compartir a la espera de nuevos conocimientos

  • @j.pgarcia2723
    @j.pgarcia2723 Год назад

    Sólo vengo a agradecer porque me sirvió

  • @marloncode
    @marloncode Год назад +1

    Excelente amigo mas videos dedicados a consultas de menos a más y hasta las consultas mas chingonas!

  • @soywismangel
    @soywismangel Год назад

    Gracias cabezón... Más vídeos de SQL difícil...😊

  • @joseg16
    @joseg16 Год назад

    Primera vez que te veo, muchas gracias, lo explicas muy bien.

  • @julio0olive
    @julio0olive Год назад +2

    Que buen video!
    Sólo me quedó una duda: como quedaría la consulta si pudieramos utilizar la instrucción TOP/LIMIT ?

  • @wilmertezen4316
    @wilmertezen4316 Год назад

    Haz mas videos así, fue una buena prueba y la solución aún más

  • @carlosalberti
    @carlosalberti Год назад +1

    Buenas , excelente video, no defraudas, por mas videos como este. saludos

  • @juanromantorres5063
    @juanromantorres5063 Год назад +1

    Excelente video como siempre explicaciones claras mas videos de este tipo hay pocos en youtube sobre todo en espanol

  • @juliocesaracosta8225
    @juliocesaracosta8225 Год назад

    Si mas videos asi hector por favor😅

  • @eduardohidalgo2720
    @eduardohidalgo2720 10 месяцев назад

    Recien lo veo,muy buen video,te lleva paso a paso

  • @MartinTriana1407
    @MartinTriana1407 Год назад

    Excelente video, sigue subiendo ejercicios complejos de SQL por favor.

  • @gonzalogarcia8288
    @gonzalogarcia8288 Год назад +1

    Gracias por compartir Amigo Metalero 👍👍

  • @Arkgelus
    @Arkgelus Год назад

    mas videos de medio y anvanzado muchas gracias capo nuevo Subs ... !!

  • @GustavoHernandez-fy4fk
    @GustavoHernandez-fy4fk Год назад +1

    Excelente, estaría bien que hicieras más videos de estos

  • @JulianRiverplate14
    @JulianRiverplate14 Год назад

    Sos demasiado pro bro!! saludos desde Argentina

  • @jhonatanriveras5335
    @jhonatanriveras5335 Год назад +1

    Muy buena forma de explicar y estas pruebas tecnicas esta geniales.

  • @ricardoant.castromartinez5791
    @ricardoant.castromartinez5791 Год назад

    Excelente, algunos mas por favor.

  • @victorvidal7344
    @victorvidal7344 Год назад

    Queremos másssss

  • @miusicpro-musicaparacreado9513
    @miusicpro-musicaparacreado9513 10 месяцев назад

    buen video, si se necesitas mas videos de sql avanzado

  • @DanielGutierrez-xj6vz
    @DanielGutierrez-xj6vz Год назад +2

    Muy bueno !

  • @sandragualdron5863
    @sandragualdron5863 Год назад

    Muy bueno! mas videos porfavor

  • @adiazwise
    @adiazwise Год назад +1

    💪 excelente video lo tendré que ver otra vez 😅 , si más videos así de sql , súper bueno

  • @FranciscoJavierMurilloVasquez
    @FranciscoJavierMurilloVasquez Год назад

    te sigo desde Managua, Nicaragua

  • @cesarsoftnica5126
    @cesarsoftnica5126 Год назад +1

    Excelente aporte Hector saludos🖥💡

  • @gusinthecloud
    @gusinthecloud 5 месяцев назад

    excelente, muchas gracias

  • @daviidgtz19
    @daviidgtz19 Год назад +1

    Excelente video y explicación, ¿puedes hacer una prueba técnica con tablas temporales ?

  • @anlodxito5468
    @anlodxito5468 Год назад

    Gracias por compartir tu conocimiento profe

  • @javier_velasquez
    @javier_velasquez Год назад

    Sigue subiendo videos de este tipo.

  • @martinflores9611
    @martinflores9611 Год назад +1

    estan buenos sigue sacando videos de sql dificil

  • @jorgeturiel9689
    @jorgeturiel9689 Год назад +1

    Más videos!!!

  • @eloyherrera
    @eloyherrera Год назад

    Excelente video, cabezón. Gracias

  • @oscarperaltanajera5317
    @oscarperaltanajera5317 Год назад +1

    Voy empezando en SQL y siento que si tuviera ese nivel de conocimiento ya podria hacer telequinesis jajaja

  • @nehemiasreyescitalan3918
    @nehemiasreyescitalan3918 Год назад

    Que buen video pana, gracias por compartir tu conocimiento. 👍🏼

  • @DavidMartinez-xp1rq
    @DavidMartinez-xp1rq Год назад

    Gracias por compartir esa página, será que hay alguna similar para practicar C#?

  • @eOrrego
    @eOrrego Год назад

    gracias, muy interesante!

  • @abelhuallullo
    @abelhuallullo Год назад

    Muy buen video amigo , saludos.

  • @asgharfarhadi6953
    @asgharfarhadi6953 7 месяцев назад

    porfa un video de como elevar el nivel de SQL incluso podrias hacer un cursoen udemy

  • @edwintellez6439
    @edwintellez6439 Год назад +4

    Lo bonito de la programación es que hay distintas formas de hacerlo select D.name as Department,E.name as Employee,T.Salary from (
    SELECT distinct departmentid,salary, dense_rank() over (partition by departmentid order by salary desc) as salary_rank from Employee
    ) as T
    inner join Department D on D.Id = T.DepartmentID
    inner join Employee E on E.Salary =T.Salary
    where salary_rank

  • @luisluisferreira22
    @luisluisferreira22 Год назад

    Buen video, estaria bueno mas de este tipo.

  • @JohnScript
    @JohnScript Год назад +2

    Pa cuando un cursito de microservicio con .NET? Saludos rey!!!

  • @marioespinosa5203
    @marioespinosa5203 Год назад

    excelente vídeo, realmente se necesitan contenido como este. me gustaría saber si existen páginas como estas pero con postgresql.

  • @martinmehaudy9043
    @martinmehaudy9043 Год назад

    ¡Más videos de SQL! 🤘

  • @bagocavs
    @bagocavs Год назад +2

    Me acuerdo que en una entreviste hace unos años me tomaron exactamente el mismo el problema, nada mas cambiaba el nombre de las tablas, me habian dado 30 min para resolverla, me acuerdo que llegue justo, tambien habia usado el el row_number.
    Despues tambien me tomaron otra prueba que no pude pasar, habia que usar el group_concat que para ese entonces no tenia idea que era jajaj

  • @mipelirroja
    @mipelirroja Год назад

    Muchas gracias, aprendí bastante :D

  • @alexfrias7979
    @alexfrias7979 Год назад

    Un crack de verdad!!!

  • @AlexLarrinagaCliment
    @AlexLarrinagaCliment Год назад

    Son necesarios ambos WHEREs? Me da la sensación de que con el de la subquery más interna basta, no?

  • @reenmolos3544
    @reenmolos3544 6 месяцев назад

    Buen video Rapunzel

  • @juandavidgafarogarcia5174
    @juandavidgafarogarcia5174 11 месяцев назад

    Excelente contenido

  • @DanielGutierrez-xj6vz
    @DanielGutierrez-xj6vz 10 месяцев назад

    SQL Avanzado !, please !!!

  • @FranciscoJavierMurilloVasquez
    @FranciscoJavierMurilloVasquez Год назад

    Saludos HectorDLeon, Me puedes saludar en tu proximo subida de video

  • @hectorrojas9587
    @hectorrojas9587 Год назад

    Videazo crack!

  • @arturo7058
    @arturo7058 Год назад +1

    Brutal. 👀😲

  • @PinEipolcolada
    @PinEipolcolada Год назад

    Hola Hector! Una duda, ¿por qué no usaste Row_number() over(partition by id order by e.salary) as number? ¿No es posible en la versión de MySQL?
    También me gustaría preguntarte porque no usaste WITH, ¿es más recomendable usar queries anidadas?
    Gracias!

    • @an89mo
      @an89mo Год назад

      Row_number() siempre te va a generar un número distinto por cada fila, aunque los valores se repitan.
      En este caso, para IT, hay 2 filas con valores iguales (85.000). Si usas Row_number(), el primer 85.000 tendría la posición 2 y el segundo la posición 3, por lo que no te serviría para calcular el top 3 (el tercer valor más alto para IT no repetido (70.000) quedaría fuera del TOP)
      En TSQL sí que se podría hacer como comentas, sólo que con Dense_rank() en lugar de Row_number(), y la query quedaría mucho más simplificada.
      Por otro lado, tengo entendido que por cuestiones de uso de memoria, es más recomendable usar subconsultas en lugar de CTEs (WITH)

  • @lucianaquiroga4405
    @lucianaquiroga4405 Год назад

    Videos de Store Procedures😊

  • @DigitalMatterMusic
    @DigitalMatterMusic Год назад

    Excelente contenido bro!, Estuviera genial que crearas un curso de SQL, yo me apunto, Saludos!.

  • @edgardomolinagonzalez3121
    @edgardomolinagonzalez3121 Год назад

    Profe ¿para trabajar en backend es necesario manejar el DCL o solo el DML y el DDL en el SQL?

  • @tutoletras2400
    @tutoletras2400 Год назад

    Puedes compartir el documento de la prueba para practicar? Aún no ví la resolución quiero ver si lo puedo hacer solo. Por favor

  • @JoseGomezMadrigal1991
    @JoseGomezMadrigal1991 Год назад

    Excelente vídeo!!!

  • @jimmymontenegro8517
    @jimmymontenegro8517 Год назад

    WOW, te pasaste.

  • @JaminFernandez
    @JaminFernandez Год назад +1

    ME GUSTO

  • @asgharfarhadi6953
    @asgharfarhadi6953 9 месяцев назад +1

    me suscribo

  • @lupithamondragon3973
    @lupithamondragon3973 Год назад

    Yo digo que para resolver ese tipo de problemas y hacer ese tipo de consultas se necesita muucha imaginación y orden de ideas, cosa que no que no tengo

  • @kjhm-privado
    @kjhm-privado Год назад

    Genial

  • @fray5892
    @fray5892 Год назад

    Excelente contenido, tienes un curso donde enseñes SQL hasta nivel avanzado? Solo uso Sequalize y la verdad es que hay cosas que requieren meterle código SQL en algunas peticiones

  • @osmarodinperezrivera665
    @osmarodinperezrivera665 Год назад

    Con los cursos que tienes en tu canal es posible llegar a ese nivel o tienes alguno de pago ?

  • @riva9210
    @riva9210 3 месяца назад

    curiosamente me vino asi en una prueba tecnica para practicante(trainee) de manera presencial con una base de datos real xD

  • @JuanCarlosLaurian
    @JuanCarlosLaurian Год назад +1

    Excelente video. En lo personal nunca me e sentido comodo trabajando con alias en las tablas. Llevo 7 años trabajando con una base de datos donde las tablas llevan la nomeclatura mnt01, mnt02, mnt03... entre otras y tarde mucho en identificarlas como para todabía cambiarles el nombre xD

  • @mosheline
    @mosheline Год назад

    Cien mil likes compañero

  • @eladioquinterolopez8020
    @eladioquinterolopez8020 Год назад

    Más

  • @edgarocampo1342
    @edgarocampo1342 Год назад

    Seria de gran ayuda puro SQL PRO avanzado

  • @MartinTriana1407
    @MartinTriana1407 Год назад

    Yo lo hice en Oracle pero me da error cuando coloco el WHERE E.DEPARTMENTE = D.ID.

  • @senoranillos6703
    @senoranillos6703 Год назад

    Ahora como le pidieron a un conocido en una prueba técnica de una empresa local. Debes hacer el análisis de rendimiento con Notación big O de la consulta final. 👹

  • @Cthu666
    @Cthu666 Год назад

    Sección dedicada a sql tienes?

  • @memeneostudio
    @memeneostudio Год назад +1

    Crack

  • @ingtellez123
    @ingtellez123 2 месяца назад

    No entiendo por qué no se puede usar LIMIT si está disponible desde la versión 5.0 por lo menos...

    • @hdeleonnet
      @hdeleonnet  2 месяца назад

      Yo no puse las reglas.

  • @sdscode
    @sdscode Год назад

    Seria posible crear el SQL query, usando puro JOIN, en lugar de usar IN ?
    He leido que usando JOINS, el performance de la consulta mejora muchisimo, especialmente si son miles de registros como usualmente pasa.

    • @deivisjlp
      @deivisjlp Год назад

      Seria de verificar, porque en la especificación sql anterior no estaba la sentencia JOIN y se hacia con el where (+) y el IN para los motores son al final varios WHERE AND pero mas legible (corríjanme si estoy mal)

    • @martins__23
      @martins__23 Год назад

      Si, es posible resolverlo solo con Joins pero te vas a complicar la vida porque para ese problema en particular tendrias que usar dos inner joins y un left join. Es mucho mas simple con subconsultas, ahora si lo que te preocupa es el performance puedes aplicar common table expressions (cte) para encapsular fragmentos de codigo y luego reutilizarlo. No depende tanto de si se resuelve con joins o subqueries

  • @diegogonzalez3562
    @diegogonzalez3562 Год назад

    que crack

  • @AntonioGarcia-df5bd
    @AntonioGarcia-df5bd Год назад

    Que es un promedio ingeniering.

  • @jorgefuentes7222
    @jorgefuentes7222 6 месяцев назад

    Se te olvido decir que sampoo es el que te deja brillante el pelo cabezón

  • @teptrix2226
    @teptrix2226 Год назад

    Se ocupa un curso sobre SQL avanzado

  • @daniveloper
    @daniveloper Год назад

    También se pudo hacer un group by directo desde la primer query que hiciste para poder quitar los salarios repetidos

  • @Arrase21
    @Arrase21 Год назад

    Un metacho que se baña..... XD
    Mentiras aguante el metal de princesas y dragones