Оставшаяся часть списка вакансий может предоставить контекст для лучшего предположения о том, что может охватывать "Advanced SQL"
.
Я не согласен с комментариями и ответами, указывающими на то, что понимание JOIN и совокупных запросов - это «продвинутые» навыки; Боюсь, многие работодатели считают это довольно простым. Вот приблизительное предположение о том, что может означать «Продвинутый».
За последние несколько лет в области RDBMS появилось «ужасно» много нового!
Требование "Advanced SQL", вероятно, намекает на знание и, возможно, на знание некоторых из новых концепций , таких как:
- CTE (общие табличные выражения)
- UDF (пользовательские функции)
- Расширения полнотекстового поиска / интеграция
- настройка производительности с новыми схемами секционирования, отфильтрованными индексами, разреженными столбцами ...)
- новые типы данных (например: ГИС / пространственные или иерархические)
- Поддержка XML / интеграция
- 1025 * LINQ *
- и еще немного ... (Кстати, приведенный выше список несколько ориентирован на MSSQL, но аналогичная эволюция наблюдается в большинстве других платформ СУБД).
Хотя быть в курсе всех «за» и «против» новых функций является важной задачей для любого «продвинутого специалиста по SQL», старые «продвинутые основы», вероятно, также считаются частью «продвинутого» * 1031 *:
- триггеры и хранимые процедуры в целом
- Курсоры (когда использовать, как избежать ...)
- экспертиза дизайна: определение таблиц, что индексировать, тип индексов
- экспертиза производительности в целом
- оптимизация запросов (чтение планов запросов, знание того, что по сути медлительно и т. Д.)
- Процедурный SQL
- ...
Примечание: вышесказанное посвящено навыкам, связанным с программированием / ведущей ролью «Расширенный SQL» может также относиться к опыту с административными ролями (репликация, резервное копирование, схема оборудования, управление пользователями ...). Если подумать, серьезный программист тоже должен быть знаком с такими практиками.
Редактировать : LuckyLindy опубликовал комментарий, который я нашел довольно проницательным. Это говорит о том, что «продвинутый» может фактически иметь иную цель, нежели подразумевать уровень «от эксперта» в большинстве категорий, перечисленных выше ...
Я повторяю этот комментарий здесь, чтобы сделать его более заметным.
Я думаю, что многие компании публикуют Advanced SQL, потому что они устали от того, что им нужен кто-то, кто говорит «Я эксперт по SQL» и не может собрать внешнее соединение из трех таблиц. Я публикую подобные сообщения в объявлениях о вакансиях, и я ожидаю, что кандидату не нужно будет постоянно приходить ко мне за помощью в написании SQL. (комментарий LuckyLindy)