diff --git a/db/StoredProcedures.sql b/db/StoredProcedures.sql
index 5fcac4ed09280aff0c14bf2ab9962e4bf8b6b1e2..50ae0a2078de6ae5347f332e3a5ebf27eadee255 100644
--- a/db/StoredProcedures.sql
+++ b/db/StoredProcedures.sql
@@ -1321,7 +1321,34 @@ END //
 
 
 
+DROP PROCEDURE IF EXISTS SearchTeachers//
+CREATE PROCEDURE `SearchTeachers`		( 	IN `FacultyID` INT,
+											IN `DepartmentID` INT,
+											IN `Last` VARCHAR(30) CHARSET utf8, 
+											IN `First` VARCHAR(30) CHARSET utf8, 
+									 		IN `Second` VARCHAR(30) CHARSET utf8   
+										)
+    NO SQL
+BEGIN
+	SELECT 	teachers.ID 			AS 'TeacherID', 
+			teachers.LastName 		AS 'TeacherLast', 
+			teachers.FirstName 		AS 'TeacherFirst', 
+			teachers.SecondName		AS 'TeacherSecond', 
+			teachers.AccountID		AS 'TeacherAccID',
+			job_positions.Name 		AS 'JobPositionName', 
+			departments.ID 			AS 'DepID',
+			departments.Name 		AS 'DepName'
+	FROM `teachers`
+	INNER JOIN `departments` ON departments.ID = teachers.DepartmentID
+	INNER JOIN `job_positions` ON job_positions.ID = teachers.JobPositionID
+	WHERE	( DepartmentID IS NULL OR departments.ID = DepartmentID) AND 
+			( FacultyID IS NULL OR departments.FacultyID = FacultyID) AND 
+			( Last IS NULL OR ( teachers.LastName REGEXP CONCAT("^",Last,"*"))) AND 
+			( First IS NULL OR ( teachers.FirstName REGEXP CONCAT("^",First,"*"))) AND
+			( Second IS NULL OR ( teachers.SecondName REGEXP CONCAT("^",Second,"*")))
+	ORDER BY departments.FacultyID ASC, departments.Name ASC, teachers.LastName ASC, teachers.FirstName ASC, teachers.SecondName ASC;
 
+END //