Filtern Sie nach identischen Spalten in Datenbanken mit SQL-Abfrage

Suchen Sie nach einer Möglichkeit, Ihre Zeilen aus einer SQL-, MySQL- oder MariaDB-Datenbanktabelle nach identischen Spalten zu filtern? Suchen Sie nach einer Abfrage, die Sie auf der Konsole spielen können?

Ich habe kürzlich eine Situation durchgemacht, in der es notwendig war, nach einer Datenbanktabelle zu filtern und nur Zeilen anzuzeigen, die zwei Spalten mit denselben Textwerten hatten. Nach stundenlanger Suche habe ich die einfache Lösung gefunden und teile sie mit Ihnen.

Ich bin kein Programmierer, und ich glaube, dass die meisten Leute, die nach diesen Tipps suchen, auch nicht so viel Sinn für Code haben.

Ich benutze oft das Navicat-Programm, um Datenbanken zu bearbeiten, es ist ziemlich schnell und praktisch, außerdem erlaubt es Ihnen, Zeilen und Spalten mit der gleichen Freiheit wie Microsoft Excel oder Apple Numbers zu bearbeiten.

Die meisten Leute verwenden PhpmyAdmin, um die Datenbanken ihrer Website zu verwalten. Beide ermöglichen es Ihnen, Skripts über die Registerkarten SQL oder Abfrage auszuführen.

Verwenden von SQL-Abfrage zum Filtern

Da ich kein Datenbankprofi bin, wusste ich nicht, dass Sie gefilterte Tabellen über einen Abfragecode anzeigen können, aber zum Glück habe ich es herausgefunden.

Meine Verwendung in der Datenbank besteht ausschließlich darin, Zeilen zu löschen, Texte zu suchen und die zu verwenden Suchen und Ersetzen, hatte ich keine Ahnung, dass SQL-Codes super nützlich sind.

Ich habe diese Codes persönlich verwendet, um nach Übersetzungsfehlern zu suchen und unübersetzte Zeilen in den Datenbanktabellen von zu finden Presse übersetzen.

Filtrar por colunas idênticas em bancos de dado com sql query - sql filtro navicat

SQL-Abfragecode

Die folgenden Codes sind nützlich für:

  • Finden Sie gleiche Zeilen aus verschiedenen Spalten;
  • Finden Sie verschiedene Zeilen aus verschiedenen Spalten;
  • Findet gleichen Inhalt in zwei Spalten;
SELECT * FROM `databasename`.`tablename` WHERE colum01 = colum02 ORDER BY `id` LIMIT 500 OFFSET 0; 

Der Code, den wir uns gerade angesehen haben, verwendet WO Spalte01 = Spalte02 um Zeilen anzuzeigen, die in beiden Spalten dieselben Ergebnisse haben. Der Code kann bei Bedarf auf weitere Spalten erweitert werden.

Falls Sie die traditionellen Filter hinzufügen möchten, um bestimmten Text zu finden, können Sie das Skript vorher erweitern SORTIEREN NACH setzen a UND wie im folgenden Code:

SELECT * FROM `databasename`.`tablename` WHERE colum01 = colum02 AND (`colum01` LIKE '%text%') ORDER BY `id` LIMIT 500 OFFSET 0; 

Nach UND Wir haben einen Code in Klammern, der den Text nur in Spalte 01 filtert. WIE um Zeilen zu finden, die den gefilterten Wert enthalten oder NICHT WIE um Zeilen zu finden, die den Wert nicht enthalten.

Das Skript kann mit AND und anderem Code weiter ausgebaut werden. Zum Abschluss werden wir nun einen anderen Code anzeigen, aber anstatt Zeilen mit gleichen Werten anzuzeigen, werden Zeilen mit unterschiedlichen Werten angezeigt !=.

SELECT * FROM `databasename`.`tablename` WHERE colum01 != colum02 ORDER BY `id` LIMIT 500 OFFSET 0; 

Ich hoffe, dieser Code hilft Ihnen, Zeilen mit denselben oder unterschiedlichen Werten aus separaten Spalten mit herkömmlichen Filtern wirklich zu filtern und zu suchen LIKE und NICHT LIKE.