<br />
<b>Notice</b>:  Function _load_textdomain_just_in_time was called <strong>incorrectly</strong>. Translation loading for the <code>breadcrumb-navxt</code> domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the <code>init</code> action or later. Please see <a href="https://developer.wordpress.org/advanced-administration/debug/debug-wordpress/">Debugging in WordPress</a> for more information. (This message was added in version 6.7.0.) in <b>/home/devtools/public_html/blog/wp-includes/functions.php</b> on line <b>6131</b><br />
{"id":441,"date":"2014-01-26T14:13:00","date_gmt":"2014-01-26T17:13:00","guid":{"rendered":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/"},"modified":"2021-09-04T18:39:42","modified_gmt":"2021-09-04T21:39:42","slug":"localizando-e-excluindo-registros-duplicados","status":"publish","type":"post","link":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/","title":{"rendered":"Localizando e Excluindo Registros Duplicados"},"content":{"rendered":"<p>Evitar a ocorr\u00eancia de registros duplicados garante a integridade de um banco de dados, pra isso, planejar e prever situa\u00e7\u00f5es no ato da modelagem do banco s\u00e3o imprescind\u00edveis para n\u00e3o ter dor de cabe\u00e7a.<\/p>\n<p>No entanto, \u00e9 comum nos deparamos com bases de dados repletas de registros duplicados, o que pode ter ocorrido por conta de um mal planejamento ou, for\u00e7ado devido a importa\u00e7\u00e3o de dados externos.<\/p>\n<p>Localizar e eliminar estes registros, ser\u00e1 o que veremos neste artigo.<\/p>\n<ul>\n<li><b style=\"color: #0b5394; font-size: x-large;\">Simulando Registros Duplicados<\/b><\/li>\n<\/ul>\n<p>A forma mais simples de localizar os duplicados \u00e9 atrav\u00e9s dos comandos <i>GROUP BY<\/i> e <i>HAVING<\/i>. Vamos popular uma tabela de produtos a fim de duplicar registros:<\/p>\n<pre style=\"background-color: #f0f0f0; background-position: initial initial; background-repeat: initial initial; border: 1px dashed #cccccc; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;\"><code style=\"word-wrap: normal;\"><span style=\"color: blue;\"> Create Table<\/span><\/code><code style=\"color: black; word-wrap: normal;\"> produto (  \n  id_produto <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">bigint not null<\/span><\/code><code style=\"color: black; word-wrap: normal;\">,  \n  descricao <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">varchar <\/span><\/code><code style=\"color: black; word-wrap: normal;\">(100),  \n  estoque <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">int not null default<\/span><\/code><code style=\"color: black; word-wrap: normal;\"> 0  \n ) ;<\/code><\/pre>\n<pre style=\"background-color: #f0f0f0; background-position: initial initial; background-repeat: initial initial; border: 1px dashed #cccccc; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;\"><code style=\"color: black; word-wrap: normal;\">  <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">Insert Into<\/span><\/code><code style=\"color: black; word-wrap: normal;\"> produto    \n  <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">Values   <\/span><\/code><code style=\"color: black; word-wrap: normal;\">\n  (1, <\/code><code style=\"word-wrap: normal;\"><span style=\"color: red;\">\"Produto A\"<\/span><\/code><code style=\"color: black; word-wrap: normal;\">, 10),   \n  (2, <\/code><code style=\"word-wrap: normal;\"><span style=\"color: red;\">\"Produto B\"<\/span><\/code><code style=\"color: black; word-wrap: normal;\">, 10),   \n  (3, <\/code><code style=\"word-wrap: normal;\"><span style=\"color: red;\">\"Produto C\"<\/span><\/code><code style=\"color: black; word-wrap: normal;\">, 10),   \n  (4, <\/code><code style=\"word-wrap: normal;\"><span style=\"color: red;\">\"Produto B\"<\/span><\/code><code style=\"color: black; word-wrap: normal;\">, 12),   \n  (5, <\/code><code style=\"word-wrap: normal;\"><span style=\"color: red;\">\"Produto C\"<\/span><\/code><code style=\"color: black; word-wrap: normal;\">, 8),   \n  (6, <\/code><code style=\"word-wrap: normal;\"><span style=\"color: red;\">\"Produto D\"<\/span><\/code><code style=\"color: black; word-wrap: normal;\">, 10),   \n  (7, <\/code><code style=\"word-wrap: normal;\"><span style=\"color: red;\">\"Produto E\"<\/span><\/code><code style=\"color: black; word-wrap: normal;\">, 10),   \n  (8, <\/code><code style=\"word-wrap: normal;\"><span style=\"color: red;\">\"Produto E\"<\/span><\/code><code style=\"color: black; word-wrap: normal;\">, 10),   \n  (9, <\/code><code style=\"word-wrap: normal;\"><span style=\"color: red;\">\"Produto F\"<\/span><\/code><code style=\"color: black; word-wrap: normal;\">, 10);   \n<\/code><\/pre>\n<ul>\n<li><b style=\"color: #0b5394; font-size: x-large;\">Identificando os Duplicados<\/b><\/li>\n<\/ul>\n<div><\/div>\n<p>Vejam que os produtos B, C e E est\u00e3o duplicados, vamos ent\u00e3o apresenta-los utilizando um simples select:<\/p>\n<pre style=\"background-color: #f0f0f0; background-position: initial initial; background-repeat: initial initial; border: 1px dashed #cccccc; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;\"><code style=\"color: black; word-wrap: normal;\"> <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">select   <\/span><\/code><code style=\"color: black; word-wrap: normal;\">\n  *   \n <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">from  <\/span><\/code><code style=\"color: black; word-wrap: normal;\">\n   produto   \n <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">group by<\/span><\/code><code style=\"color: black; word-wrap: normal;\"> descricao   \n <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">having <\/span><\/code><code style=\"word-wrap: normal;\"><span style=\"color: magenta;\">count<\/span><\/code><code style=\"color: black; word-wrap: normal;\">(descricao) &gt; 1 ;  \n<\/code><\/pre>\n<pre style=\"background-image: url('http:\/\/2.bp.blogspot.com\/_z5ltvMQPaa8\/SjJXr_U2YBI\/AAAAAAAAAAM\/46OqEP32CJ8\/s320\/codebg.gif'); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;\"><code style=\"color: black; word-wrap: normal;\"> id_produto descricao estoque  \n ---------- --------- -------  \n      2 Produto B    10  \n      3 Produto C    10  \n      7 Produto E    10  \n<\/code><\/pre>\n<p>Localizar os registros foi poss\u00edvel pois, agrupamos os diferentes produtos em um s\u00f3 (group by), ap\u00f3s, adicionamos a condi\u00e7\u00e3o para que somente os registros que contenham mais de uma ocorr\u00eancia (having&#8230;) fossem apresentados. (Mais de uma ocorr\u00eancia ap\u00f3s agrupado). No exemplo, filtramos somente os registros com mais de uma ocorr\u00eancia, mas voc\u00ea pode especificar a quantidade desejada.<\/p>\n<p>[Dica]<br \/>\nObserve que os registros encontrados como duplicados foram os com menor id.<\/p>\n<p><a name=\"more\"><\/a><br \/>\nAl\u00e9m de lista-los, podemos identificar todos eles e, saber quantas vezes cada um est\u00e1 repetido, vejamos:<\/p>\n<pre style=\"background-color: #f0f0f0; background-position: initial initial; background-repeat: initial initial; border: 1px dashed #cccccc; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;\"><code style=\"color: black; word-wrap: normal;\"> <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">select   <\/span><\/code><code style=\"color: black; word-wrap: normal;\">\n  descricao,  \n  <\/code><code style=\"word-wrap: normal;\"><span style=\"color: magenta;\">count<\/span><\/code><code style=\"color: black; word-wrap: normal;\">(descricao) <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">as <\/span><\/code><code style=\"color: black; word-wrap: normal;\">Quantidade  \n <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">from  <\/span><\/code><code style=\"color: black; word-wrap: normal;\">\n  produto   \n<\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\"> group by<\/span><\/code><code style=\"color: black; word-wrap: normal;\"> descricao   \n<\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\"> having<\/span><\/code><code style=\"color: black; word-wrap: normal;\"> <\/code><code style=\"word-wrap: normal;\"><span style=\"color: magenta;\">count<\/span><\/code><code style=\"color: black; word-wrap: normal;\">(descricao) &gt; 1 ;  \n<\/code><\/pre>\n<pre style=\"background-image: url('http:\/\/2.bp.blogspot.com\/_z5ltvMQPaa8\/SjJXr_U2YBI\/AAAAAAAAAAM\/46OqEP32CJ8\/s320\/codebg.gif'); background: #f0f0f0; border: 1px dashed #CCCCCC; color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;\"><code style=\"color: black; word-wrap: normal;\"> descricao Quantidade  \n --------- ----------  \n Produto B      2  \n Produto C      2  \n Produto E      2  \n<\/code><\/pre>\n<p>Com o count, agora sabemos que para cada registro duplicado, existem duas linhas em nossa tabela.<\/p>\n<p>Agora que j\u00e1 sabemos como identificar os registros, como exclu\u00ed-los?<\/p>\n<ul>\n<li><b style=\"color: #0b5394; font-size: x-large;\">Excluindo os Duplicados<\/b><\/li>\n<\/ul>\n<div>Antes de excluir os registros, \u00e9 importante saber se eles n\u00e3o s\u00e3o chaves estrangeiras em outras tabelas, o que pode causar um grande estrago em seu banco de dados se o relacionamento foi criado com on delete cascade.<\/p>\n<p>Precau\u00e7\u00f5es a parte, vamos excluir os registros. Podemos fazer isso de v\u00e1rias formas, focarei somente na forma mais pr\u00e1tica e usual que aplico:<\/p>\n<p>1\u00ba &#8211; Crio uma tabela com os registros duplicados, esta tabela pode ser apagada posteriormente, no entanto, recomendo n\u00e3o fazer isso, pois, ela pode ser usada posteriormente para fins de consulta:<\/p>\n<\/div>\n<pre style=\"background-color: #f0f0f0; background-position: initial initial; background-repeat: initial initial; border: 1px dashed #cccccc; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;\"><code style=\"color: black; word-wrap: normal;\"> <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">create table<\/span><\/code><code style=\"color: black; word-wrap: normal;\"> produto_duplicado   \n (<\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">select   <\/span><\/code><code style=\"color: black; word-wrap: normal;\">\n  *   \n <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">from  <\/span><\/code><code style=\"color: black; word-wrap: normal;\">\n  produto   \n <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">group by<\/span><\/code><code style=\"color: black; word-wrap: normal;\"> descricao   \n <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">having <\/span><\/code><code style=\"word-wrap: normal;\"><span style=\"color: magenta;\">count<\/span><\/code><code style=\"color: black; word-wrap: normal;\">(descricao) &gt; 1) ;  \n<\/code><\/pre>\n<p>N\u00e3o entendeu a forma que criei a tabela? Leia esta mat\u00e9ria que entender\u00e1: <a href=\"https:\/\/devtools.com.br\/blog\/criando-uma-tabela-com-base-em-outra-ja-existente\/\" target=\"_blank\" rel=\"noopener noreferrer\">Criando uma tabela com base em outra j\u00e1 existente.<\/a><\/p>\n<p>Lembra da dica que dei acima? Ent\u00e3o, neste momento voc\u00ea pode optar por excluir os registros mais antigos, ou mais recentes, no caso, se preferir manter os mais antigos, coloque um max na coluna id_produto.<\/p>\n<p>2\u00ba &#8211; Com a tabela criada, excluiremos os registros:<\/p>\n<pre style=\"background-color: #f0f0f0; background-position: initial initial; background-repeat: initial initial; border: 1px dashed #cccccc; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;\"><code style=\"color: black; word-wrap: normal;\"> <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">delete   <\/span><\/code><code style=\"color: black; word-wrap: normal;\">\n <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">from  <\/span><\/code><code style=\"color: black; word-wrap: normal;\">\n  produto   \n <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">where <\/span><\/code><code style=\"color: black; word-wrap: normal;\">produto.id_produto <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">in<\/span><\/code><code style=\"color: black; word-wrap: normal;\">   \n  (<\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">select<\/span><\/code><code style=\"color: black; word-wrap: normal;\">   \n   produto_duplicado.id_produto   \n  <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">from  <\/span><\/code><code style=\"color: black; word-wrap: normal;\">\n   produto_duplicado   \n  <\/code><code style=\"word-wrap: normal;\"><span style=\"color: blue;\">where <\/span><\/code><code style=\"color: black; word-wrap: normal;\">produto_duplicado.id_produto = produto.id_produto) ;  \n<\/code><\/pre>\n<p>Nenhum segredo na linha do delete, o x da quest\u00e3o est\u00e1 na tabela que criamos, usamos ela em um sub-select, desta forma, apagamos somente os registros duplicados.<\/p>\n<p>Caso tenha ficado alguma d\u00favida, queira dar uma sugest\u00e3o ou reclamar tamb\u00e9m (:d), poste nos coment\u00e1rios, terei o maior prazer em responder, um grande abra\u00e7o.<\/p>\n<ul>\n<li><b style=\"color: #0b5394; font-size: x-large;\">Perguntas Frequentes<\/b><\/li>\n<\/ul>\n<p><b><br \/>\n<\/b><b>Voc\u00ea menciona que existem outras formas de excluir os registros, quais?<\/b><\/p>\n<ol>\n<li><a href=\"http:\/\/www.devmedia.com.br\/forum\/como-retornar-e-excluir-registros-duplicados-via-select\/32873\" target=\"_blank\" rel=\"noopener\">http:\/\/www.devmedia.com.br\/forum\/como-retornar-e-excluir-registros-duplicados-via-select\/32873<\/a><\/li>\n<li><a href=\"http:\/\/msmvps.com\/blogs\/cmattos\/archive\/2011\/05\/07\/sql-como-excluir-registros-duplicados-numa-tabela-sem-chave-prim-225-ria.aspx\" target=\"_blank\" rel=\"noopener\">http:\/\/msmvps.com\/blogs\/cmattos\/archive\/2011\/05\/07\/sql-como-excluir-registros-duplicados-numa-tabela-sem-chave-prim-225-ria.aspx<\/a><\/li>\n<li><a href=\"http:\/\/gustavomaiaaguiar.wordpress.com\/2009\/05\/30\/como-eliminar-linhas-duplicadas-e-repeticoes-no-sql-server\/\" target=\"_blank\" rel=\"noopener\">http:\/\/gustavomaiaaguiar.wordpress.com\/2009\/05\/30\/como-eliminar-linhas-duplicadas-e-repeticoes-no-sql-server\/<\/a><\/li>\n<li><a href=\"http:\/\/ericsilva.wordpress.com\/2013\/07\/11\/como-excluir-registros-duplicados-no-mysql\/\" target=\"_blank\" rel=\"noopener\">http:\/\/ericsilva.wordpress.com\/2013\/07\/11\/como-excluir-registros-duplicados-no-mysql\/<\/a><\/li>\n<\/ol>\n<p><b>Voc\u00ea menciona on delete cascade, o que \u00e9 isso?<\/b><br \/>\n<a href=\"http:\/\/magaweb.com.br\/blog\/?p=450\" target=\"_blank\" rel=\"noopener\">http:\/\/magaweb.com.br\/blog\/?p=450<\/a><\/p>\n<p><b>No seu caso, existem apenas dois registros duplicados para cada produto, se houvessem mais, como eu faria para manter somente um?<\/b><br \/>\nCrie uma tabela com os registros que ser\u00e3o mantidos (vide exemplo no 4\u00ba link da primeira pergunta), ap\u00f3s, apague os registros com o delete apresentado acima (Adapta\u00e7\u00f5es poder\u00e3o ser necess\u00e1rias).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Evitar a ocorr\u00eancia de registros duplicados garante a integridade de um banco de dados, pra isso, planejar e prever situa\u00e7\u00f5es no ato da modelagem do banco s\u00e3o imprescind\u00edveis para n\u00e3o ter dor de cabe\u00e7a. No entanto, \u00e9 comum nos deparamos com bases de dados repletas de registros duplicados, o que pode ter ocorrido por conta &#8230; <a title=\"Localizando e Excluindo Registros Duplicados\" class=\"read-more\" href=\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/\" aria-label=\"More on Localizando e Excluindo Registros Duplicados\">Ler mais<\/a><\/p>\n","protected":false},"author":1,"featured_media":834,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[272],"tags":[],"class_list":["post-441","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-banco-de-dados"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Localizando e Excluindo Registros Duplicados<\/title>\n<meta name=\"description\" content=\"Entenda como \u00e9 poss\u00edvel localizar e excluir registros duplicados em seu banco de dados.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Localizando e Excluindo Registros Duplicados\" \/>\n<meta property=\"og:description\" content=\"Entenda como \u00e9 poss\u00edvel localizar e excluir registros duplicados em seu banco de dados.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/\" \/>\n<meta property=\"og:site_name\" content=\"Devtools\" \/>\n<meta property=\"article:published_time\" content=\"2014-01-26T17:13:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-09-04T21:39:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2014\/01\/duplicatekeys.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"425\" \/>\n\t<meta property=\"og:image:height\" content=\"282\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Fabiano Abreu\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fabiano Abreu\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/\"},\"author\":{\"name\":\"Fabiano Abreu\",\"@id\":\"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/aa3425fdfdefa404466fc49f6d122eed\"},\"headline\":\"Localizando e Excluindo Registros Duplicados\",\"datePublished\":\"2014-01-26T17:13:00+00:00\",\"dateModified\":\"2021-09-04T21:39:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/\"},\"wordCount\":597,\"commentCount\":3,\"publisher\":{\"@id\":\"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/aa3425fdfdefa404466fc49f6d122eed\"},\"image\":{\"@id\":\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2014\/01\/duplicatekeys.jpg\",\"articleSection\":[\"Banco de Dados\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/\",\"url\":\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/\",\"name\":\"Localizando e Excluindo Registros Duplicados\",\"isPartOf\":{\"@id\":\"https:\/\/devtools.com.br\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2014\/01\/duplicatekeys.jpg\",\"datePublished\":\"2014-01-26T17:13:00+00:00\",\"dateModified\":\"2021-09-04T21:39:42+00:00\",\"description\":\"Entenda como \u00e9 poss\u00edvel localizar e excluir registros duplicados em seu banco de dados.\",\"breadcrumb\":{\"@id\":\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#primaryimage\",\"url\":\"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2014\/01\/duplicatekeys.jpg\",\"contentUrl\":\"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2014\/01\/duplicatekeys.jpg\",\"width\":425,\"height\":282},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/devtools.com.br\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Localizando e Excluindo Registros Duplicados\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/devtools.com.br\/blog\/#website\",\"url\":\"https:\/\/devtools.com.br\/blog\/\",\"name\":\"Devtools\",\"description\":\"Sua caixa de ferramentas online\",\"publisher\":{\"@id\":\"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/aa3425fdfdefa404466fc49f6d122eed\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/devtools.com.br\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/aa3425fdfdefa404466fc49f6d122eed\",\"name\":\"Fabiano Abreu\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2022\/07\/Fabiano-Abreu.png\",\"contentUrl\":\"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2022\/07\/Fabiano-Abreu.png\",\"width\":184,\"height\":184,\"caption\":\"Fabiano Abreu\"},\"logo\":{\"@id\":\"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/image\/\"},\"sameAs\":[\"https:\/\/devtools.com.br\/blog\"],\"url\":\"https:\/\/devtools.com.br\/blog\/author\/admin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Localizando e Excluindo Registros Duplicados","description":"Entenda como \u00e9 poss\u00edvel localizar e excluir registros duplicados em seu banco de dados.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/","og_locale":"pt_BR","og_type":"article","og_title":"Localizando e Excluindo Registros Duplicados","og_description":"Entenda como \u00e9 poss\u00edvel localizar e excluir registros duplicados em seu banco de dados.","og_url":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/","og_site_name":"Devtools","article_published_time":"2014-01-26T17:13:00+00:00","article_modified_time":"2021-09-04T21:39:42+00:00","og_image":[{"width":425,"height":282,"url":"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2014\/01\/duplicatekeys.jpg","type":"image\/jpeg"}],"author":"Fabiano Abreu","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Fabiano Abreu","Est. tempo de leitura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#article","isPartOf":{"@id":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/"},"author":{"name":"Fabiano Abreu","@id":"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/aa3425fdfdefa404466fc49f6d122eed"},"headline":"Localizando e Excluindo Registros Duplicados","datePublished":"2014-01-26T17:13:00+00:00","dateModified":"2021-09-04T21:39:42+00:00","mainEntityOfPage":{"@id":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/"},"wordCount":597,"commentCount":3,"publisher":{"@id":"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/aa3425fdfdefa404466fc49f6d122eed"},"image":{"@id":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#primaryimage"},"thumbnailUrl":"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2014\/01\/duplicatekeys.jpg","articleSection":["Banco de Dados"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/","url":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/","name":"Localizando e Excluindo Registros Duplicados","isPartOf":{"@id":"https:\/\/devtools.com.br\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#primaryimage"},"image":{"@id":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#primaryimage"},"thumbnailUrl":"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2014\/01\/duplicatekeys.jpg","datePublished":"2014-01-26T17:13:00+00:00","dateModified":"2021-09-04T21:39:42+00:00","description":"Entenda como \u00e9 poss\u00edvel localizar e excluir registros duplicados em seu banco de dados.","breadcrumb":{"@id":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#primaryimage","url":"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2014\/01\/duplicatekeys.jpg","contentUrl":"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2014\/01\/duplicatekeys.jpg","width":425,"height":282},{"@type":"BreadcrumbList","@id":"https:\/\/devtools.com.br\/blog\/localizando-e-excluindo-registros-duplicados\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/devtools.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"Localizando e Excluindo Registros Duplicados"}]},{"@type":"WebSite","@id":"https:\/\/devtools.com.br\/blog\/#website","url":"https:\/\/devtools.com.br\/blog\/","name":"Devtools","description":"Sua caixa de ferramentas online","publisher":{"@id":"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/aa3425fdfdefa404466fc49f6d122eed"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/devtools.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":["Person","Organization"],"@id":"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/aa3425fdfdefa404466fc49f6d122eed","name":"Fabiano Abreu","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/image\/","url":"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2022\/07\/Fabiano-Abreu.png","contentUrl":"https:\/\/devtools.com.br\/blog\/wp-content\/uploads\/2022\/07\/Fabiano-Abreu.png","width":184,"height":184,"caption":"Fabiano Abreu"},"logo":{"@id":"https:\/\/devtools.com.br\/blog\/#\/schema\/person\/image\/"},"sameAs":["https:\/\/devtools.com.br\/blog"],"url":"https:\/\/devtools.com.br\/blog\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/devtools.com.br\/blog\/wp-json\/wp\/v2\/posts\/441","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devtools.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devtools.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devtools.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/devtools.com.br\/blog\/wp-json\/wp\/v2\/comments?post=441"}],"version-history":[{"count":3,"href":"https:\/\/devtools.com.br\/blog\/wp-json\/wp\/v2\/posts\/441\/revisions"}],"predecessor-version":[{"id":1345,"href":"https:\/\/devtools.com.br\/blog\/wp-json\/wp\/v2\/posts\/441\/revisions\/1345"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devtools.com.br\/blog\/wp-json\/wp\/v2\/media\/834"}],"wp:attachment":[{"href":"https:\/\/devtools.com.br\/blog\/wp-json\/wp\/v2\/media?parent=441"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devtools.com.br\/blog\/wp-json\/wp\/v2\/categories?post=441"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devtools.com.br\/blog\/wp-json\/wp\/v2\/tags?post=441"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}