Ich versuche, Daten in einer Spalte zu vergleichen, die in zwei verschiedenen Tabellen ist. Die beiden Tabellen sind viel mehr Spalten, aber der Einfachheit halber .....SQLITE Spalten in zwei Tabellen vergleichen, um LIKE Daten zu finden
CREATE TABLE A(
ID integer PRIMARY KEY AUTOINCREMENT,
name char(20)
);
CREATE TABLE B(
ID integer PRIMARY KEY AUTOINCREMENT,
name char(20)
);
INSERT INTO A(name) VALUES ('John Smith');
INSERT INTO A(name) VALUES ('J Doe');
INSERT INTO A(name) VALUES ('Jane Smith');
INSERT INTO B(name)VALUES('John Smith');
INSERT INTO B(name)VALUES('J. Doe');
INSERT INTO B(name)VALUES('jane smith');
Das meiste, was ich bisher gefunden habe war, die Unterschiede zwischen den Tischen zu finden, aber ich habe nicht finden verwaltet wie man ähnliche Daten zusammenbringt. Ich bin auf der Suche nach etwas, das Ergebnisse wie folgt ergeben wird:
Tabelle A | Tabelle B
John Smith | John Smith
Jane Smith | jane smith
J Doe | J. Doe
Der folgende Code abgestimmt mehrere Namen:
CREATE TABLE tblC (
tblAName char(20),
tblBName char(20)
);
INSERT INTO tblC (tblAName, tblBName)
SELECT
tblA.name,
tblB.name
FROM tblA
LEFT JOIN on tblB WHERE tblA.name LIKE tblB.name;
Allerdings habe ich nicht herausgefunden, wie die Namen zu erhalten, die Satzzeichen enthalten. Dies hat nicht funktioniert:
INSERT INTO tblC (tblAName, tblBName)
SELECT
tblA.name,
tblB.name
FROM tblA
LEFT JOIN on tblB WHERE tblA.name LIKE tblB.name
WHERE tblA.name LIKE "%Xxx%" OR "%X.%" tblB.name LIKE "%Xxx%" OR "%X.%";
Definieren Sie "ähnlich". –
Mit ähnlich ich meine, wenn Tabelle A hat "John Smith" in das Feld Name, ich möchte, dass es in der Lage sein B, wo das Namensfeld enthält "JOHN SMITH", JOHN_SMITH "," JohnSmith "usw. – taylorbuckeye
Sie haben ein paar Beispiele aufgelistet, aber nichts, was es erlauben würde, einen Algorithmus zu spezifizieren –