2 つのテーブルにクエリを実行し、人々の名前でそれらを結合しています。過去 1 か月以内にフォームに記入していないすべての従業員を作成しようとしています。私が直面している問題は、人々が短い名前 (Joseph ではなく Joe、Michael ではなく Mike) をリストすると、名前の重複を受け取ることです。短い名前を使用している場合でも、重複することなく人々のリストを作成するにはどうすればよいですか?
これは私が今持っているクエリです:
SELECT DISTINCT ge.employeeNo,
(ge.firstName + ' ' + ge.lastName) AS empName,
ge.email
FROM dbo.hist_Employees ge
INNER JOIN dbo.ctrl_Sites cs ON ge.locationID = cs.ID
WHERE (ge.firstName + ' ' + ge.lastName) NOT IN
(SELECT sc.recordedBy
FROM GRSTOPS.dbo.hist_StopCard sc
INNER JOIN dbo.ctrl_Area a ON sc.area = a.ID
INNER JOIN dbo.ctrl_Site s ON a.site = s.ID
WHERE sc.recorded BETWEEN '10/01/2013' AND '10/30/2013'
AND s.code = 'gre')
AND cs.Abbreviation = 'gre'
AND ge.employmentStatus = 1
AND ge.primaryDept <> 3