Pamiętam, że uczyłem się tego na kursie DBMS dla studentów Master of Information Services. Aby zaoszczędzić trochę pisania, możesz wpisać:
SELECT t1.id, t2.stuff
FROM
someTable t1
INNER JOIN otherTable t2
ON t1.id=t2.id
;
Ale ... Dlaczego jest to dopuszczalne w procedurach przechowywanych i tak dalej? Wygląda na to, że wszystko, co robi, szkodzi czytelności instrukcji, a jednocześnie oszczędza bardzo mało czasu. Czy istnieje jakiś funkcjonalny lub logiczny powód, aby to zrobić? Wydaje się, że dodaje niejasności, a nie ją usuwa; jedynym dopuszczalnym powodem, dla którego widzę użycie tego formatu, jest dodanie aliasu znaczącego semantycznie - na przykład FROM someTable idsTable
- gdy nazwa tabeli nie jest wystarczająco opisowa.
Czy aliasing stołu jest złą praktyką, czy to tylko niewłaściwe użycie pomocnego systemu?
stored-procedures
best-practices
naming-convention
Ben Brocka
źródło
źródło
select id, stuff from someTable natural join otherTable
?Odpowiedzi:
Alias tabel jest powszechną i pomocną praktyką.
Poniższy fragment raportu ładnie ilustruje wszystkie powyższe punkty:
źródło
Myślę, że użycie aliasów poprawia czytelność zapytania, jeśli nazwy tabel są długie lub tak do siebie podobne, że ktoś, kto je szybko przeczyta, może je pomylić. Czy uważasz, że to ...
jest bardziej czytelny niż to?
W zależności od tego, czego używasz jako aliasy tabeli, może to znacznie ułatwić kwerendę dla osoby czytającej i rozumiejącej.
źródło
Aliasing tabel (ze względu na krótsze nazwy tabel) nie jest złą praktyką.
Zwykle używam go, gdy nazwy tabel są długie, a następnie używam tylko aliasu, który ma sens:
Jeśli chcesz poprawić czytelność, możesz użyć
AS
słowa kluczowego:Ale kiedy przyzwyczaisz się do składni, nie jest to konieczne.
źródło
Możesz użyć tego, aby znacznie zwiększyć czytelność swoich zapytań. Zamiast używać krótkiego aliasu, użyj swojego aliasu, aby na przykład opisać dane, do których dołączasz
Chociaż użycie wyjątkowo krótkich aliasów (takich jak
a
lubt1
) może utrudnić odczytanie zapytania, ponieważ musisz znaleźć i znaleźć alias, aby sprawdzić, co oznacza alias, dobrze nazwany alias może często sprawić, że zapytanie będzie bardziej czytelne niż użycie tabeli nazwy.źródło
To pytanie dotyczy „złej praktyki”. Wydaje się, że odpowiedzi dotyczą „Zapisywania naciśnięć klawiszy”.
Osobiście moja szybkość kodowania jest ograniczona szybkością myślenia, a nie szybkością pisania. Uważam, że kod z dużą ilością aliasów tabel jest znacznie trudniejszy do odczytania niż kod, który używa samych nazw tabel. Aliasy tabel dodają kolejny poziom pośredni.
Jednak większość programistów używa aliasów tabel (chociaż ja nie). Niektóre „środowiska programistyczne SQL” sprawiają, że jest to bardzo łatwe, a niektórzy nauczyciele uczą aliasy tabel automatycznie, szczególnie w ramach uczenia się składni „Dołącz”.
Używanie aliasów tabel nie jest złą praktyką, ale czasami muszę przejść przez kod i zastąpić aliasy oryginalnymi nazwami tabel, aby zrozumieć, co się dzieje.
źródło