Recuerdo haber aprendido a hacer esto en un curso DBMS para estudiantes de Master of Information Services. Para ahorrarse algo de escritura, puede escribir:
SELECT t1.id, t2.stuff
FROM
someTable t1
INNER JOIN otherTable t2
ON t1.id=t2.id
;
Pero ... ¿Por qué es esto aceptable en procedimientos almacenados y tal? Parece que todo lo que hace es dañar la legibilidad de la declaración mientras ahorra una cantidad extremadamente pequeña de tiempo. ¿Hay alguna razón funcional o lógica para hacer esto? Parece agregar ambigüedad en lugar de eliminarla; La única razón aceptable que puedo ver para usar este formato es si estaba agregando un alias semánticamente significativo, por ejemplo, FROM someTable idsTable
cuando el nombre de la tabla no es lo suficientemente descriptivo.
¿El alias de tablas es una mala práctica o es solo un mal uso de un sistema útil?
fuente
select id, stuff from someTable natural join otherTable
?Respuestas:
El alias de tabla es una práctica común y útil.
El siguiente extracto de informes ilustra muy bien todos los puntos anteriores:
fuente
Creo que el uso de alias ayuda a la legibilidad de una consulta si los nombres de las tablas son tan largos o similares entre sí que alguien que los lea rápidamente podría confundirlos. ¿Crees que esto ...
es más legible que esto?
Dependiendo de lo que use como alias de tabla, puede hacer que la consulta sea mucho más simple para que una persona la lea y comprenda.
fuente
El alias de tabla (en aras de nombres de tabla más cortos) no es una mala práctica.
Normalmente lo uso cuando los nombres de las tablas son largos y luego solo uso el alias que tiene sentido:
Si desea mejorar la legibilidad, puede usar la
AS
palabra clave:Pero, a medida que se acostumbra a la sintaxis, no es necesario.
fuente
Puede usar esto para aumentar significativamente la legibilidad de sus consultas. En lugar de usar un alias corto, use su alias para describir los datos a los que se está uniendo, por ejemplo
Si bien el uso de alias extremadamente cortos (como
a
ot1
) puede hacer que una consulta sea difícil de leer, ya que necesita ir y encontrar el alias para buscar lo que significa el alias, un alias bien nombrado a menudo puede hacer que una consulta sea más legible que simplemente usar la tabla nombresfuente
Esta es una pregunta sobre "mala práctica". Las respuestas parecen ser sobre "Guardar pulsaciones de teclas".
Personalmente, mi velocidad de codificación está limitada por mi velocidad de pensamiento, no por mi velocidad de escritura. Encuentro que el código con muchos alias de tabla es mucho más difícil de leer que el código que usa los nombres de las tablas. Los alias de tabla agregan otro nivel de indirección.
Sin embargo, la mayoría de los programadores usan alias de tabla (aunque yo no). Algunos "entornos de desarrollo de SQL" hacen que esto sea muy fácil de hacer, y algunos maestros enseñan alias de tabla automáticamente, especialmente como parte del aprendizaje de la sintaxis "Join".
Usar alias de tabla no es una mala práctica, pero a veces tengo que pasar por el código y reemplazar los alias con los nombres de las tablas originales para comprender lo que está sucediendo.
fuente