IntelliSense - это вещь на стороне клиента, столбцы - это вещь на стороне сервера. IntelliSense не обязательно будет знать, что определенный псевдостолбец не существует (например, $ IDENTITY существует, но только для таблиц, имеющих столбец типа IDENTITY), но при запуске запроса сервер сообщит вам, что его не существует. IntelliSense не является устройством, которое постоянно запрашивает сервер, чтобы убедиться, что то, что вы пишете, не является мусором - вы можете увидеть это, если вы используете другое окно SSMS для добавления столбца в таблицу, а затем ссылаетесь на него из первого окна - i Tellisene не знает его там, пока вы не обновите sh (Ctrl + Alt + RI), поэтому он подведет красную линию под новым столбцом, даже если запрос будет работать нормально, когда вы отправите его на сервер