Любой приличный оптимизатор запросов отменит соответствующие ограничения, а иногда и прогнозы, чтобы свести к минимуму обрабатываемые данные.И поскольку оптимизатор сделает это автоматически, а результат будет идентичным, нет особой необходимости оптимизировать выражение в реляционной алгебре.
В такой последовательности соединения двух таблиц не ясно, чтобыло бы полезно сформировать прогноз до объединения с отделом;вероятная последовательность обработки - найти (вероятно, один) отдел с Dname = 'Database', а затем найти единственную строку в Employee с E.SSN = D.Mgr_SSN.Однако, если подвыражение использовалось несколько раз, это вполне может стоить сделать.
Я также отмечаю, что дизайн ужасен - вы никогда не должны использовать ничего более чувствительного, чем SSN, как поле присоединения вдизайн базы данных.Команда PCI подойдет!Но, может быть, имена - это пережиток более спокойных времен, давно минувших, но контент является суррогатом, и настоящий SSN хранится в Employee.RealSSN (который может быть даже зашифрован, чтобы неавторизованные пользователи его не видели - хотя при установкеправа на столбец правильно, так что только авторизованный может выбрать его, также действует).