How to delete duplicate records from a table in SQL | How to delete duplicate rows in SQL

Поділитися
Вставка
  • Опубліковано 13 вер 2024
  • How to delete duplicate records from a table in SQL | Multiple ways to delete duplicate records in SQL
    In this video, multiple ways has been shown to delete duplicate records from a table.
    1. By using GROUP BY clause and MAX()
    2. By using CTE and ROW_NUMBER()
    Follow me on Social Networking Sites :
    *Twitter:
    / sunilkr5672
    *Instagram :
    / itjunction4all
    Input Script :
    Create Table EmpDetail (
    ID int identity(1,1),
    EmpName varchar(25),
    Departmemt varchar(20),
    Age int,
    Gender char(1),
    Salary Bigint
    )
    Insert into EmpDetail values('James','HR',30,'M',40000)
    Insert into EmpDetail values('James','HR',30,'M',40000)
    Insert into EmpDetail values('James','HR',30,'M',40000)
    Insert into EmpDetail values('John','Finance',32,'M',45000)
    Insert into EmpDetail values('Maria','Admin',28,'M',30000)
    Insert into EmpDetail values('Maria','Admin',28,'M',30000)
    Insert into EmpDetail values('Mark','Account',35,'M',50000)
    #SQLInterviewQuestionsandanswers #sqlInterviewQuestions #sqlInterviewQuestionsForTesting #sqlInterviewQuestionsQuery #sqlInterviewQuestionsOnJoins #sqlTechnicalInterviewQuestions #SQLforETLTesters #CommonSqlInterviewQuestions #ETLTesting
    #DeleteDuplicateRecordsFromTable #ITJunction4All

КОМЕНТАРІ • 89

  • @yonashabtesllassie5642
    @yonashabtesllassie5642 3 роки тому +8

    Very good explanation, very clear and cleaver way.... Thank you it helped me a lot

    • @ItJunction4all
      @ItJunction4all  3 роки тому +1

      You are welcome! Thank you for such a nice feedback !

  • @tonygiovanni5761
    @tonygiovanni5761 5 місяців тому +1

    Good stuff. I like the way you make easy. Brief and straight to the point. Keep posting more videos

    • @ItJunction4all
      @ItJunction4all  5 місяців тому

      Thanks a lot Tony ! Please subscribe my channel so that you will get all my future videos updates

  • @SamuelLed2k24
    @SamuelLed2k24 Рік тому +1

    thank you! been working on the same problem for a while now, and I have finally solved it because of this video.

    • @ItJunction4all
      @ItJunction4all  Рік тому

      You are welcome! I am glad that my video helped you.

  • @rajeshSharma-od4sn
    @rajeshSharma-od4sn 2 роки тому +2

    Nicely explained by you sir
    Very helpful video
    Thank you sir

    • @ItJunction4all
      @ItJunction4all  2 роки тому

      Thanks Rajesh ! I hope you will like my other videos as well.

  • @dhruvchaudhary_7
    @dhruvchaudhary_7 8 місяців тому +1

    What if we use distinct function? Our output would be the same or not?

  • @akpaneno9643
    @akpaneno9643 7 місяців тому +1

    This was really helpful.

  • @sumancreative2806
    @sumancreative2806 Рік тому +1

    Nice explanation.. Thank You...

  • @masheTyMasha
    @masheTyMasha Рік тому +1

    Thank you so much! Very loligicall explained.

  • @rohandevaki4349
    @rohandevaki4349 2 роки тому +1

    great explaination

  • @mdaquib7836
    @mdaquib7836 2 роки тому +1

    Thanks for your help. 2nd option Helped

  • @Basireddy-li5mq
    @Basireddy-li5mq 3 місяці тому

    Hi Sir, post we run these query still showing duplicate records in table------ delete from frds where frd_id not in (
    select max(frd_id) from frds group by frd_name,dob,salary,dept_id);

  • @chidinganyadi6796
    @chidinganyadi6796 Рік тому +1

    Thank you Sir. I have a question. What if the column names are many, will we start typing all of them in

  • @familybannas8809
    @familybannas8809 Рік тому

    Love ur explanations

  • @prashantsingh1892
    @prashantsingh1892 2 роки тому +1

    Sir using first method if i have different id name and rest of the records are same then it will not fetch as a duplicate values, So your first method is only for if the duplicate values are same if anything row number value is different it will not

    • @ItJunction4all
      @ItJunction4all  2 роки тому

      Thanks for writing Prashant ! First query will work if you have unique id for each row.
      Let me know if this clarifies your doubt .

    • @prashantsingh1892
      @prashantsingh1892 2 роки тому +1

      @@ItJunction4all got it sir.. Thankyou 😇

    • @ItJunction4all
      @ItJunction4all  2 роки тому

      @@prashantsingh1892 Welcome Prashant !

  • @mohamednawfel5172
    @mohamednawfel5172 3 роки тому +1

    this is really helpful

  • @push_freebird6693
    @push_freebird6693 Рік тому +1

    fabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
    finally got a solution!!!!!!!
    thanks!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    • @ItJunction4all
      @ItJunction4all  Рік тому +1

      You are welcome ! I hope you will like other videos of my channel as well !

  • @VeronicaAngryPolak
    @VeronicaAngryPolak Рік тому +2

    could you write a case statement for duplicate rows and delete duplicates that way?

    • @ItJunction4all
      @ItJunction4all  Рік тому

      I don't think it is possible to delete duplicate records using case statement

  • @lokeshhousnoor3099
    @lokeshhousnoor3099 2 роки тому +1

    Thanks Alot

    • @ItJunction4all
      @ItJunction4all  2 роки тому

      You're welcome Lokesh ! I hope you are liking my other SQL videos as well. Let me know your feedback ?

  • @RajuSharma-j7x
    @RajuSharma-j7x Рік тому +1

    I Don't understand, why did you use Duplicate_CTE . Could you please explain.

  • @malisachin469
    @malisachin469 8 місяців тому +1

    it's showing "ERROR 1288: The target table duplicate_CTE of the UPDATE is not updatable" in MYSQL. plz help me with this

  • @user-id9yf2vm8v
    @user-id9yf2vm8v Рік тому +1

    If this query will run in mysqlworkbench 8.0 in Mac laptop because its not running in my laptop..please help

  • @thebestken
    @thebestken 2 роки тому +1

    What if the unique id is not integer but a unique identifier like Guid? You can’t use max there. How will you do it?

    • @ItJunction4all
      @ItJunction4all  2 роки тому

      Thanks for writing Ken Singh ! Max function works on alphanumeric values as well . I think it will work on Guid as well.

  • @MrSayandeep
    @MrSayandeep 3 роки тому +1

    Thanks a lot

  • @jagannathgaidhani5333
    @jagannathgaidhani5333 2 роки тому +1

    sir, which platform are you using for this.
    i am using CLI its very difficult there to execute big Query.

  • @hannahgetachew8909
    @hannahgetachew8909 2 роки тому +1

    thank you

  • @Sharmine_
    @Sharmine_ 2 роки тому +1

    Thanks for the video. I am trying to use CTE and ROW_NUMBER(), however I got this error: The target table tableName_CTE of the DELETE is not updatable. Do you know how to resolve the error?

    • @ItJunction4all
      @ItJunction4all  2 роки тому +1

      Thank you Sharmine for writing ! Could you please tell me which database you are using ?

    • @Sharmine_
      @Sharmine_ 2 роки тому

      @@ItJunction4all I am using mySQL workbench

    • @ItJunction4all
      @ItJunction4all  2 роки тому +1

      Looks like delete from a CTE on MySQL 8+ is not working. It works good in Sql Server database. You can go for another approach for deleting duplicate records in mySQL database.

    • @Sharmine_
      @Sharmine_ 2 роки тому

      @@ItJunction4all I also tried the first DELETE method, the problem is it took a long time and will only display timeout

    • @ItJunction4all
      @ItJunction4all  2 роки тому

      @@Sharmine_ Ohh..I see. How many duplicates you are trying to delete from your table ?

  • @rohitdeshbhratar6467
    @rohitdeshbhratar6467 4 роки тому +2

    Hi,
    i am executing with clause query in Oracle PLSQL developer and i am getting error missing select keyword.
    Please help me.

    • @Ramya-o6m
      @Ramya-o6m Місяць тому

      I'm facing the same issue. It seems it is application dependent and not working to delete cte records

  • @Pkrish344
    @Pkrish344 9 місяців тому

  • @prasadkumbhar1656
    @prasadkumbhar1656 3 роки тому +1

    Sir I have a doubt,
    Suppose with the same table if there is no ID column but there are some other column as well say (deptno,deptname,loc, etc)which have duplicate records and the table does not have primary key column defined in this case how should we delete duplicate records where there are more no of columns??

    • @ItJunction4all
      @ItJunction4all  3 роки тому

      Hi Kumbhar...In that scenario, you can delete duplicate data by the way i have explained using CTE and Row_Number(). I hope this will help.

    • @debashisahu
      @debashisahu 3 роки тому

      @@ItJunction4all sir there also you have used order by id , so how to tackle that one

    • @SanketBandi
      @SanketBandi Рік тому

      @@ItJunction4all SIR it is not taking Row_Number() as key word what should i do?

    • @ItJunction4all
      @ItJunction4all  Рік тому

      @@SanketBandi Which database are you using ?

  • @galazostephaniemae1919
    @galazostephaniemae1919 3 роки тому +1

    Sir how about in windows 10?

  • @leecallaghan4625
    @leecallaghan4625 10 місяців тому

    good day . i have an issue with my leads platform . when i enter a lead it says it already exists . i wa looking into this issue and found that it maybe an issue with a DUPLICATE KEY . does anyone have any idea .

  • @behindthescenesreality9368
    @behindthescenesreality9368 3 роки тому +1

    Sir before making video please maintain visible screen size it's hardly visible to me may be it's only my problem or for other also don't know...

    • @ItJunction4all
      @ItJunction4all  3 роки тому

      Ok Sure. Thanks !

    • @shambhum1829
      @shambhum1829 2 роки тому

      Sir great information but video is not proper visible screen size very small please can you make this same video one more time and upload

  • @MAH-ls1if
    @MAH-ls1if 11 місяців тому +1

    what is CTE?

  • @uma1910
    @uma1910 3 роки тому +1

    Are you continuing these questions?

    • @ItJunction4all
      @ItJunction4all  3 роки тому +1

      Yes I will continue adding questions as and when time permits me.

  • @manishmishra6245
    @manishmishra6245 2 роки тому

    8:21 using cte

  • @vishnuvamshi4645
    @vishnuvamshi4645 2 роки тому

    NOT WRITTEN QUERY IN DESCRIPTION PLEASE ADD THE QUERY

  • @manmathan0762
    @manmathan0762 3 роки тому

    Your method is not working for me bro is shows error: releation "duplicate_cte does not exist
    Line 6: Delete from Duplicate_CTE where Dupont >1

  • @chittibabu8149
    @chittibabu8149 8 місяців тому

    What is duplicate cte

    • @ItJunction4all
      @ItJunction4all  8 місяців тому

      CTE is a Common Table Expression. With the help of CTE , duplicate record was deleted

  • @RijyoMagazine
    @RijyoMagazine 10 місяців тому

    Video not clear

    • @ItJunction4all
      @ItJunction4all  10 місяців тому +1

      Video is clear...open this video from UA-cam and go to settings and then click on Quality and select 1080pixel quality. Your video clarity will be equivalent to HD video

  • @rizwanwaheed3073
    @rizwanwaheed3073 Рік тому

    Thank you