Im Prinzip habe ich eine Tabelle wie folgt aus:Wie Abfrage SQL Server 2008-Datenbank für Vor- und Nachname und Reihenfolge nach Relevanz?
CREATE TABLE Person(
PersonID int IDENTITY(1,1) NOT NULL,
FirstName nvarchar(512) NOT NULL,
LastName nvarchar(512) NULL
)
Und ich brauche auf einem Benutzer-Abfrage wie folgt die oben n Ergebnisse basieren zu finden:
"Joh Smi"
Die folgende Abfrage gibt die Ergebnisse Ich brauche (denke ich). Nur nicht in der entsprechenden Reihenfolge.
SELECT
PersonID, FirstName, LastName
FROM
Person
WHERE
FirstName LIKE 'Joh%' OR
LastName LIKE 'Joh%' OR
FirstName LIKE 'Smi%' OR
LastName LIKE 'Smi%'
Wenn die folgenden Namen waren in der Datenbank und unsere Top-Abfrage war "Joh Smi" die Namen in der folgenden Reihenfolge (oder ähnlich)
- John Smith
- Johnny Smith erscheinen soll
- John Jacob
- David Smithsonian
- Daniel Johnson
Ich hoffe, es zu funktionieren ähnlich wie Facebook Autocomplete Friend-Search.
Also, wie gebe ich die obersten n relevantesten Zeilen in SQL Server 2008 zurück?
Liebe die Liste. Wie aber würde die SQL-Abfrage/-Funktion aussehen? :-) –
hey, es ist fast 2 Uhr hier, ich will schlafen :) – Andrey
haha. ok ok ... ich gebe dir eine Pause. –