Někdy možná budete muset najít duplicitní záznamy v MySQL. Zde je návod, jak získat duplicitní záznamy v tabulce. Můžete jej použít k získání řádků s duplicitními hodnotami v MySQL
Jak najít duplicitní hodnoty v MySQL
Zde jsou kroky k získání duplicitních záznamů v MySQL. Řekněme, že máte následující tabulku MySQL s duplicitními záznamy.
mysql> vytvořit tabulku dup_orders(id int, částka int);mysql> vložit do dup_orders(id,amount) values(1, 100),(1,250),(2,350),(2,350);mysql> vybrat * z dup_orders;+------+--------+| id | částka |+------+--------+| 1 | 100 || 1 | 250 || 2 | 350 || 2 | 350 |+------+--------+
Bonusové čtení:Přidání jedinečného omezení MySQL
Najít duplicitní hodnoty řádku v jednom sloupci
Zde je dotaz SQL k nalezení duplicitních hodnot pro jeden sloupec
SELECT col, COUNT(col)FROM table_nameGROUP BY colHAVING COUNT(col)> 1;
Ve výše uvedeném dotazu provedeme GROUP BY pro sloupec, u kterého chceme zkontrolovat duplikáty. K získání počtu řádků pro každou skupinu používáme také klauzule COUNT() a HAVING.
Bonusové čtení:Sloupec přejmenování MySQL
Použijme výše uvedený dotaz pro naše dup_orders tabulky, abyste získali duplicitní hodnoty pro id sloupec
mysql> vyberte id, částka ze skupiny dup_orders podle id s count(id)>1;+------+--------+| id | částka |+------+--------+| 1 | 100 || 2 | 350 |+------+--------+
Najít duplicitní hodnoty řádku ve více sloupcích
Zde je dotaz SQL k nalezení duplicitních hodnot pro více sloupců
SELECT col1, col2,..., COUNT(*)FROM table_nameGROUP BY col1, col2, ...HAVING (COUNT(col1)> 1) AND (COUNT(col2)> 1) AND ...Ve výše uvedeném dotazu provedeme GROUP BY všech sloupců (col1, col2 ), pro které chceme najít duplikáty. K získání počtu řádků pro každou skupinu používáme také klauzule COUNT() a HAVING.
Bonusové čtení:Jak duplikovat tabulku v MySQL
Použijme výše uvedený dotaz pro naše dup_orders tabulky, abyste získali duplicitní hodnoty pro id a částka sloupec
mysql> vyberte id, částku,počet(*) z dup_orders seskupte podle id,částka s count(id)>1 a count(amount)>1;+------+------ --+----------+| id | částka | počet(*) |+------+--------+----------+| 2 | 350 | 2 |+------+--------+----------+Doufejme, že nyní můžete snadno získat duplicitní záznamy v MySQL.
Ubiq usnadňuje vizualizaci dat během několika minut a sledování na řídicích panelech v reálném čase. Vyzkoušejte to ještě dnes!