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 Nutzung der Datenbank besteht ausschließlich darin, Zeilen zu löschen, Texte zu suchen und Search and Replace zu verwenden. Ich hatte keine Ahnung, dass SQL-Codes super nützlich sind.
Ich habe diese Codes persönlich verwendet, um Übersetzungsfehler zu überprüfen und Zeilen zu finden, die in den Datenbanktabellen von Translatepress nicht übersetzt wurden.
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 gerade gesehen haben, verwendet WHERE colum01 = colum02, um Zeilen anzuzeigen, die in beiden Spalten gleiche Ergebnisse haben. Der Code kann erweitert werden, um mehr Spalten hinzuzufügen, falls gewünscht.
Falls Sie traditionelle Filter hinzufügen möchten, um bestimmten Text zu finden, können Sie das Skript vor ORDER BY erweitern, indem Sie ein AND einfügen, wie im folgenden Code:
SELECT * FROM `databasename`.`tablename` WHERE colum01 = colum02 AND (`colum01` LIKE '%text%') ORDER BY `id` LIMIT 500 OFFSET 0;
Nach dem AND haben wir einen Code in Klammern, der den Text nur in der Spalte 01 filtert. Es wird LIKE verwendet, um Zeilen zu finden, die den gefilterten Wert enthalten, oder NOT LIKE, 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, tatsächlich nach Zeilen mit gleichen oder unterschiedlichen Werten in getrennten Spalten mit den herkömmlichen Filtern LIKE und NOT LIKE zu filtern und zu suchen.