Artykuły

A A A
Drukuj Ekportuj do PDF
Opublikowane: 2008.09.01 9:19 | Wojciech Kowasz | Aktualizacja: 2011.09.29 15:52

100 sposobów na SQL

thumb
Andrew Cumming, Gordon Russell : Jeżeli wolisz uczyć się na przykładach niż studiować dokumentacje, powinieneś przeczytać tę książkę. Gdybyś jednak miał ograniczyć się do skopiowania gotowych rozwiązań, zacznij od kursu języka SQL. Książka będzie też bardzo przydatna osobom pracującym na co dzień z jednym z opisywanych w niej serwerów baz danych, które chcą (albo muszą) poznać inne serwery. Dzięki niej wykorzystają zdobyte doświadczenie w pracy z innym serwerem.

Po pierwsze, rozwiązując sto typowych problemów bazodanowych autorzy pokazują możliwości języka SQL. Rozpoczynając od najprostszych sposobów zwracają uwagę na poprawne używanie tego języka – na przykład sposób 3. „Warunkowe polecenia INSERT” uczy nas jednoczesnego przetwarzania zbiorów, a nie pojedynczych danych.

Drugą charakterystyczną cechą książki jest przedstawienie uniwersalnych, działających na pięciu różnych serwerach baz danych (MySQL, PostgreSQL, SQL Server, Oracle i Access) technik. Porównując kolejne wersje rozwiązań tych samych problemów przekonujemy się, że różnice pomiędzy dialektami języka SQL są mniejsze niż mogło to się nam wydawać. Dopiero w połowie książki autorzy przyznają, że to zaskakujące podobieństwo wynika z zastosowania przez nich przyjętego ponad 15 lat temu standardu ANSI SQL2. Gdyby do rozwiązania niektórych problemów użyć obowiązującego dziś standardu SQL3, byłyby one czytelniejsze, prostsze i wydajniejsze. Niestety, byłyby też bardziej zróżnicowane. Na przykład, przedstawiony sposób wybierania dowolnych n kolejnych wierszy wyniku dla serwera SQL 2005 wykorzystuje podzapytanie z operatorem NOT IN, a nie funkcje rankingu.

W rezultacie w książce znajdziemy prawidłowe i uniwersalne, ale nie zawsze najlepsze sposoby:

  1. Wyznaczania trendów,
  2. Graficznego reprezentowania wyników zapytań,
  3. Wyszukiwania anomalii poprzez grupowanie danych,
  4. Generowania ciągłych sekwencji liczb,
  5. Wykorzystania tabel i widoków do przechowywania parametrów(technika szczególnie przydatna w programie Access),
  6. Zarządzania dostępem użytkowników do poszczególnych wierszy,
  7. Zastąpienia blokad wersjonowaniem danych, czyli wdrożenia optymistycznego modelu współbieżności,
  8. Rekursywnej analizy danych (może ktoś z Was przedstawi wykorzystującą CTE wersję sposobu 80. „Sześć stopni od Kevina Bacona”?).

Podstawą niektórych z opisanych w książce sposobów jest sprytne zastosowanie matematyki (np. żeby znaleźć większą z dwóch, przechowywanych w osobnych kolumnach wartości wystarczy policzyć (x+y+ABS(x-y))/2), lub reguł obowiązujących w księgowości, ale większość z nich bazuje na umiejętnym wykorzystaniu wyjątkowych cech języka SQL.

Podsumowanie

Jeżeli wolisz uczyć się na przykładach niż studiować dokumentacje, powinieneś przeczytać tę książkę. Gdybyś jednak miał ograniczyć się do skopiowania gotowych rozwiązań, zacznij od kursu języka SQL.

Książka będzie też bardzo przydatna osobom pracującym na co dzień z jednym z opisywanych w niej serwerów baz danych, które chcą (albo muszą) poznać inne serwery. Dzięki niej wykorzystają zdobyte doświadczenie w pracy z innym serwerem.

Autor recenzji: Marcin Szeliga


Komentarze 0 Masz uwagi do tej strony? Napisz

Dodaj komentarz

avatar

Zaloguj się lub Zarejestruj się aby wykonać tę czynność.

Autor Wojciech Kowasz
avatar VIP
 

MCP; MCDST; MCSA+S; MCSE+S; MCTS: Vista, 2008, Sharepoint; MCITP: Ent. Support

Załóż konto
WSS to serwis, który łączy dziesiątki tysięcy specjalistów IT w Polsce, zajmujących się szeroko pojętymi technologiami Microsoft. Portal działa od 2003 roku, i oprócz setek publikacji technicznych, rozwijającego się forum - portal to ludzie, którzy go tworzą. To właśnie z myślą o nich warto codziennie nas odwiedzać.

Dowiedz się więcej o WSS

vGuru - Zostań Guru Wirtualizacji

 

MetroOne

Idź na górę strony