Q:

¿Cual es la sintaxis correcta de un select en SQL SERVER (alias)?

¿Cual es la sintaxis correcta en un select usando SQL SERVER?
SELECT columna FROM [basedatos].dbo.tabla AS tb WHERE condiciones
O
SELECT columna FROM basedatos.dbo.tabla tb WHERE condiciones
¿Se puede usar alias?
¿Son necesarios los corchetes []?

A:

Los corchetes son necesarios si utilizas caracteres especiales (espacios, puntos,...) en los nombres de los elementos de la base de datos (base de datos, tablas, columnas, vistas, ...).
Por ejemplo puedes crearte un campo en una tabla con el nombre mi campo. Si haces una consulta del tipo:
SELECT mi campo FROM tabla

SQL Server intentará buscar el campo mi en la tabla tabla y utilizar el alias campo para el resultado. Si no existe campo mi devolverá un error.
Es en estos casos cuando deben utilizarse corchetes:
SELECT [mi campo] FROM tabla

Muchas herramientas de generación de consultas los añaden siempre para evitar problemas, pero únicamente serían necesarios en esos casos.

