Категорії
Електронні книги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комп'ютер в офісі
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Мультимедійне навчання
- Нерухомість
- Переконання та НЛП
- Податки
- Соціальна політика
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Звіти, аналізи
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Електронна преса
- Architektura i wnętrza
- Biznes i Ekonomia
- Будинок та сад
- Електронний бізнес
- Фінанси
- Особисті фінанси
- Бізнес
- Фотографія
- Інформатика
- Відділ кадрів та оплата праці
- Комп'ютери, Excel
- Бухгалтерія
- Культура та література
- Наукові та академічні
- Охорона навколишнього середовища
- Впливові
- Освіта
- Податки
- Подорожі
- Психологія
- Релігія
- Сільське господарство
- Ринок книг і преси
- Транспорт та спедиція
- Здоров'я та краса
-
Історія
-
Інформатика
- Офісні застосунки
- Бази даних
- Біоінформатика
- Бізнес ІТ
- CAD/CAM
- Digital Lifestyle
- DTP
- Електроніка
- Цифрова фотографія
- Комп'ютерна графіка
- Ігри
- Хакування
- Hardware
- IT w ekonomii
- Наукові пакети
- Шкільні підручники
- Основи комп'ютера
- Програмування
- Мобільне програмування
- Інтернет-сервери
- Комп'ютерні мережі
- Стартап
- Операційні системи
- Штучний інтелект
- Технологія для дітей
- Вебмайстерність
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Оповідна поезія
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Шкільні підручники
-
Науково-популярна та академічна
- Археологія
- Bibliotekoznawstwo
- Кінознавство / Теорія кіно
- Філологія
- Польська філологія
- Філософія
- Finanse i bankowość
- Географія
- Економіка
- Торгівля. Світова економіка
- Історія та археологія
- Історія мистецтва і архітектури
- Культурологія
- Мовознавство
- літературні студії
- Логістика
- Математика
- Ліки
- Гуманітарні науки
- Педагогіка
- Навчальні засоби
- Науково-популярна
- Інше
- Психологія
- Соціологія
- Театральні студії
- Богослов’я
- Економічні теорії та науки
- Transport i spedycja
- Фізичне виховання
- Zarządzanie i marketing
-
Порадники
-
Ігрові посібники
-
Професійні та спеціальні порадники
-
Юридична
- Безпека життєдіяльності
- Історія
- Дорожній кодекс. Водійські права
- Юридичні науки
- Охорона здоров'я
- Загальне, компендіум
- Академічні підручники
- Інше
- Закон про будівництво і житло
- Цивільне право
- Фінансове право
- Господарське право
- Господарське та комерційне право
- Кримінальний закон
- Кримінальне право. Кримінальні злочини. Кримінологія
- Міжнародне право
- Міжнародне та іноземне право
- Закон про охорону здоров'я
- Закон про освіту
- Податкове право
- Трудове право та законодавство про соціальне забезпечення
- Громадське, конституційне та адміністративне право
- Кодекс про шлюб і сім'ю
- Аграрне право
- Соціальне право, трудове право
- Законодавство Євросоюзу
- Промисловість
- Сільське господарство та захист навколишнього середовища
- Словники та енциклопедії
- Державні закупівлі
- Управління
-
Путівники та подорожі
- Африка
- Альбоми
- Південна Америка
- Центральна та Північна Америка
- Австралія, Нова Зеландія, Океанія
- Австрія
- Азії
- Балкани
- Близький Схід
- Болгарія
- Китай
- Хорватія
- Чеська Республіка
- Данія
- Єгипет
- Естонія
- Європа
- Франція
- Гори
- Греція
- Іспанія
- Нідерланди
- Ісландія
- Литва
- Латвія
- Mapy, Plany miast, Atlasy
- Мініпутівники
- Німеччина
- Норвегія
- Активні подорожі
- Польща
- Португалія
- Інше
- Росія
- Румунія
- Словаччина
- Словенія
- Швейцарія
- Швеція
- Світ
- Туреччина
- Україна
- Угорщина
- Велика Британія
- Італія
-
Психологія
- Філософія життя
- Kompetencje psychospołeczne
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Аудіокниги
-
Бізнес та економіка
- Біткойн
- Ділова жінка
- Коучинг
- Контроль
- Електронний бізнес
- Економіка
- Фінанси
- Фондова біржа та інвестиції
- Особисті компетенції
- Комунікація та переговори
- Малий бізнес
- Маркетинг
- Мотивація
- Нерухомість
- Переконання та НЛП
- Податки
- Порадники
- Презентації
- Лідерство
- Зв'язки з громадськістю
- Секрет
- Соціальні засоби комунікації
- Продаж
- Стартап
- Ваша кар'єра
- Управління
- Управління проектами
- Людські ресурси (HR)
-
Для дітей
-
Для молоді
-
Освіта
-
Енциклопедії, словники
-
Історія
-
Інформатика
-
Інше
-
Іноземні мови
-
Культура та мистецтво
-
Шкільні читанки
-
Література
- Антології
- Балада
- Біографії та автобіографії
- Для дорослих
- Драми
- Журнали, щоденники, листи
- Епос, епопея
- Нарис
- Наукова фантастика та фантастика
- Фельєтони
- Художня література
- Гумор, сатира
- Інше
- Класичний
- Кримінальний роман
- Нехудожня література
- Художня література
- Mity i legendy
- Лауреати Нобелівської премії
- Новели
- Побутовий роман
- Okultyzm i magia
- Оповідання
- Спогади
- Подорожі
- Поезія
- Політика
- Науково-популярна
- Роман
- Історичний роман
- Проза
- Пригодницька
- Журналістика
- Роман-репортаж
- Romans i literatura obyczajowa
- Сенсація
- Трилер, жах
- Інтерв'ю та спогади
-
Природничі науки
-
Соціальні науки
-
Науково-популярна та академічна
-
Порадники
-
Професійні та спеціальні порадники
-
Юридична
-
Путівники та подорожі
-
Психологія
- Філософія життя
- Міжособистісне спілкування
- Mindfulness
- Загальне
- Переконання та НЛП
- Академічна психологія
- Психологія душі та розуму
- Психологія праці
- Relacje i związki
- Батьківство та дитяча психологія
- Вирішення проблем
- Інтелектуальний розвиток
- Секрет
- Сексуальність
- Спокушання
- Зовнішній вигляд та імідж
- Філософія життя
-
Релігія
-
Спорт, фітнес, дієти
-
Техніка і механіка
Відеокурси
-
Бази даних
-
Big Data
-
Biznes, ekonomia i marketing
-
Кібербезпека
-
Data Science
-
DevOps
-
Для дітей
-
Електроніка
-
Графіка / Відео / CAX
-
Ігри
-
Microsoft Office
-
Інструменти розробки
-
Програмування
-
Особистісний розвиток
-
Комп'ютерні мережі
-
Операційні системи
-
Тестування програмного забезпечення
-
Мобільні пристрої
-
UX/UI
-
Веброзробка, Web development
-
Управління
Подкасти
- Електронні книги
- Бази даних
- SQL
- SQL. Zapytania i techniki dla bazodanowców. Receptury. Wydanie II
Деталі електронної книги
SQL. Zapytania i techniki dla bazodanowców. Receptury. Wydanie II
Anthony Molinaro, Robert de Graaf
SQL jest linqua franca dla profesjonalistów zajmujących się przetwarzaniem danych. To wyjątkowo dojrzałe narzędzie, z którego korzysta już kilka pokoleń inżynierów i programistów. Wydaje się jednak, że zbyt często ten język nie jest należycie wykorzystywany: wielu użytkowników posługuje się nim na co dzień, ale mało kto wychodzi poza stosunkowo proste zapytania. Tymczasem z możliwości nowoczesnego SQL mogą skorzystać nie tylko osoby zajmujące się bazami danych, ale także analitycy danych, analitycy biznesowi, statystycy czy osoby zajmujące się wizualizacją danych.
To drugie, gruntownie zaktualizowane wydanie nieocenionego zbioru receptur, podanych tak, aby maksymalnie ułatwić rozwiązywanie codziennych problemów związanych z budową zapytań SQL. Uwzględniono tu kilka wariantów języka SQL, zaimplementowanych w systemach Oracle, DB2, SQL Server, MySQL i PostgreSQL. W książce znalazły się propozycje zastosowania takich nowoczesnych rozwiązań jak funkcje okna, wspólne wyrażenia tablicowe i rekurencyjne zapytania hierarchiczne. Nie zabrakło receptur opracowanych specjalnie dla analityków danych, umożliwiających zastosowanie mediany odchylenia bezwzględnego i prawa Benforda, a także wyszukiwanie danych tekstowych na podstawie brzmienia słów.
W tym wydaniu znajdziesz receptury, dzięki którym:
- łatwiej opanujesz podstawy SQL
- dobrze wykorzystasz funkcje okna
- zastosujesz wspólne wyrażenia tablicowe (CTE) do tworzenia czytelniejszych rozwiązań
- zwiększysz użyteczność SQL w analizie danych
- skuteczniej obsłużysz dane liczbowe i ciągi znaków
SQL: dokładnie to, czego potrzebujesz!
- Przedmowa
- Dla kogo jest przeznaczona ta książka?
- O czym w tej książce nie pisaliśmy?
- Systemy i wersje
- Tabele wykorzystane w tej książce
- Konwencje stosowane w książce
- Konwencje typograficzne
- Konwencje prezentacji kodów
- Podziękowania do wydania drugiego
- Podziękowania do wydania pierwszego
- Rozdział 1. Odczytywanie rekordów
- 1.1. Odczytywanie wszystkich wierszy i kolumn tabeli
- Problem
- Rozwiązanie
- Omówienie
- 1.2. Odczytywanie podzbioru wierszy tabeli
- Problem
- Rozwiązanie
- Omówienie
- 1.3. Odnajdywanie wierszy spełniających wiele warunków
- Problem
- Rozwiązanie
- Omówienie
- 1.4. Odczytywanie podzbioru kolumn tabeli
- Problem
- Rozwiązanie
- Omówienie
- 1.5. Definiowanie sensownych nazw kolumn
- Problem
- Rozwiązanie
- Omówienie
- 1.6. Odwołania do aliasów kolumn w klauzuli WHERE
- Problem
- Rozwiązanie
- Omówienie
- 1.7. Konkatenacja wartości kolumn
- Problem
- Rozwiązanie
- DB2, Oracle, PostgreSQL
- MySQL
- SQL Server
- Omówienie
- 1.8. Stosowanie logiki warunkowej w wyrażeniu SELECT
- Problem
- Rozwiązanie
- Omówienie
- 1.9. Ograniczanie liczby zwracanych wierszy
- Problem
- Rozwiązanie
- DB2
- MySQL i PostgreSQL
- Oracle
- SQL Server
- Omówienie
- 1.10. Zwracanie n losowych rekordów tabeli
- Problem
- Rozwiązanie
- DB2
- MySQL
- PostgreSQL
- Oracle
- SQL Server
- Omówienie
- 1.11. Odnajdywanie wartości pustych (NULL)
- Problem
- Rozwiązanie
- Omówienie
- 1.12. Przekształcanie wartości pustych w rzeczywiste
- Problem
- Rozwiązanie
- Omówienie
- 1.13. Poszukiwanie wzorców
- Problem
- Rozwiązanie
- Omówienie
- 1.14. Podsumowanie
- 1.1. Odczytywanie wszystkich wierszy i kolumn tabeli
- Rozdział 2. Sortowanie wyników zapytań
- 2.1. Zwracanie wyników zapytań posortowanych w określonym porządku
- Problem
- Rozwiązanie
- Omówienie
- 2.2. Sortowanie zbioru wynikowego według zawartości wielu pól
- Problem
- Rozwiązanie
- Omówienie
- 2.3. Sortowanie według podłańcuchów
- Problem
- Rozwiązanie
- DB2, MySQL, Oracle i PostgreSQL
- SQL Server
- Omówienie
- 2.4. Sortowanie wymieszanych danych alfanumerycznych
- Problem
- Rozwiązanie
- Oracle, SQL Server i PostgreSQL
- DB2
- MySQL
- Omówienie
- 2.5. Obsługa wartości pustych w zapytaniach sortujących
- Problem
- Rozwiązanie
- DB2, MySQL, PostgreSQL oraz SQL Server
- Oracle
- Omówienie
- 2.6. Sortowanie według klucza zależnego od danych
- Problem
- Rozwiązanie
- Omówienie
- 2.7. Podsumowanie
- 2.1. Zwracanie wyników zapytań posortowanych w określonym porządku
- Rozdział 3. Praca z wieloma tabelami
- 3.1. Umieszczanie jednego zbioru wierszy ponad drugim
- Problem
- Rozwiązanie
- Omówienie
- 3.2. Łączenie wzajemnie powiązanych wierszy
- Problem
- Rozwiązanie
- Omówienie
- 3.3. Odnajdywanie wspólnych wierszy pomiędzy dwiema tabelami
- Problem
- Rozwiązanie
- MySQL i SQL Server
- DB2, Oracle i PostgreSQL
- Omówienie
- 3.4. Uzyskiwanie z jednej tabeli tylko tych wartości, które nie występują w innej tabeli
- Problem
- Rozwiązanie
- DB2, PostgreSQL i SQL Server
- Oracle
- MySQL
- Omówienie
- DB2, PostgreSQL i SQL Server
- Oracle
- MySQL
- 3.5. Uzyskiwanie z jednej tabeli tylko tych wierszy, dla których nie istnieją odpowiedniki w innej tabeli
- Problem
- Rozwiązanie
- DB2, MySQL, PostgreSQL, Oracle, SQL Server
- Omówienie
- 3.6. Dodawanie złączeń do zapytań bez konieczności modyfikowania pozostałych, już istniejących złączeń
- Problem
- Rozwiązanie
- Omówienie
- Patrz także
- 3.7. Określanie, czy dwie tabele zawierają te same dane
- Problem
- Rozwiązanie
- DB2 i PostgreSQL
- Oracle
- MySQL i SQL Server
- Omówienie
- DB2, Oracle i PostgreSQL
- MySQL i SQL Server
- 3.8. Identyfikowanie i eliminowanie iloczynów kartezjańskich
- Problem
- Rozwiązanie
- Omówienie
- 3.9. Stosowanie złączeń w zapytaniach wykorzystujących funkcje agregujące
- Problem
- Rozwiązanie
- MySQL i PostgreSQL
- DB2, Oracle i SQL Server
- Omówienie
- MySQL i PostgreSQL
- DB2, Oracle i SQL Server
- 3.10. Stosowanie złączeń zewnętrznych w zapytaniach wykorzystujących funkcje agregujące
- Problem
- Rozwiązanie
- DB2, MySQL, PostgreSQL i SQL Server
- Omówienie
- 3.11. Zwracanie brakujących danych z wielu tabel
- Problem
- Rozwiązanie
- DB2, MySQL, PostgreSQL i SQL Server
- Oracle
- Omówienie
- 3.12. Wykorzystywanie wartości NULL w operacjach i porównaniach
- Problem
- Rozwiązanie
- Omówienie
- 3.13. Podsumowanie
- 3.1. Umieszczanie jednego zbioru wierszy ponad drugim
- Rozdział 4. Wstawianie, aktualizowanie i usuwanie
- 4.1. Wstawianie nowych rekordów
- Problem
- Rozwiązanie
- Omówienie
- 4.2. Wstawianie wartości domyślnych
- Problem
- Rozwiązanie
- Omówienie
- 4.3. Zastępowanie wartości domyślnych wartością NULL
- Problem
- Rozwiązanie
- Omówienie
- 4.4. Kopiowanie wierszy pomiędzy tabelami
- Problem
- Rozwiązanie
- Omówienie
- 4.5. Kopiowanie definicji tabel
- Problem
- Rozwiązanie
- DB2
- Oracle, MySQL i PostgreSQL
- SQL Server
- Omówienie
- DB2
- Oracle, MySQL i PostgreSQL
- SQL Server
- 4.6. Wstawianie wierszy do wielu tabel jednocześnie
- Problem
- Rozwiązanie
- Oracle
- DB2
- MySQL, PostgreSQL oraz SQL Server
- Omówienie
- Oracle
- DB2
- MySQL, PostgreSQL oraz SQL Server
- 4.7. Blokowanie możliwości wstawiania wartości do wybranych kolumn
- Problem
- Rozwiązanie
- Omówienie
- 4.8. Modyfikowanie rekordów tabeli
- Problem
- Rozwiązanie
- Omówienie
- 4.9. Aktualizowanie danych pod warunkiem istnienia w tabeli określonych wierszy
- Problem
- Rozwiązanie
- Omówienie
- 4.10. Aktualizowanie wartości według zawartości innej tabeli
- Problem
- Rozwiązanie
- DB2
- MySQL
- Oracle
- PostgreSQL
- SQL Server
- Omówienie
- DB2
- Oracle
- PostgreSQL, SQL Server i MySQL
- 4.11. Scalanie rekordów
- Problem
- Rozwiązanie
- Omówienie
- 4.12. Usuwanie wszystkich rekordów z tabeli
- Problem
- Rozwiązanie
- Omówienie
- 4.13. Usuwanie rekordów spełniających określone kryteria
- Problem
- Rozwiązanie
- Omówienie
- 4.14. Usuwanie pojedynczych rekordów
- Problem
- Rozwiązanie
- Omówienie
- 4.15. Usuwanie wierszy naruszających integralność referencyjną
- Problem
- Rozwiązanie
- Omówienie
- 4.16. Usuwanie powtarzających się rekordów
- Problem
- Rozwiązanie
- Omówienie
- 4.17. Usuwanie rekordów na podstawie danych z innej tabeli
- Problem
- Rozwiązanie
- Omówienie
- 4.18. Podsumowanie
- 4.1. Wstawianie nowych rekordów
- Rozdział 5. Zapytania przetwarzające metadane
- 5.1. Generowanie listy tabel wchodzących w skład schematu bazy danych
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL, MySQL i SQL Server
- Omówienie
- 5.2. Generowanie listy kolumn danej tabeli
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL, MySQL i SQL Server
- Omówienie
- 5.3. Generowanie listy indeksowanych kolumn danej tabeli
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- 5.4. Generowanie listy ograniczeń zdefiniowanych dla tabeli
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL, MySQL i SQL Server
- Omówienie
- 5.5. Generowanie listy kluczy obcych pozbawionych indeksów
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- 5.6. Generowanie kodu języka SQL za pomocą wyrażeń tego języka
- Problem
- Rozwiązanie
- Omówienie
- 5.7. Opisywanie widoków słownika danych w bazie danych Oracle
- Problem
- Rozwiązanie
- Omówienie
- 5.8. Podsumowanie
- 5.1. Generowanie listy tabel wchodzących w skład schematu bazy danych
- Rozdział 6. Praca z łańcuchami
- 6.1. Przechodzenie pomiędzy znakami łańcucha
- Problem
- Rozwiązanie
- Omówienie
- 6.2. Umieszczanie apostrofów w stałych łańcuchowych
- Problem
- Rozwiązanie
- Omówienie
- 6.3. Zliczanie wystąpień znaku w łańcuchu wejściowym
- Problem
- Rozwiązanie
- Omówienie
- 6.4. Usuwanie z łańcucha niechcianych znaków
- Problem
- Rozwiązanie
- DB2, Oracle, PostgreSQL i SQL Server
- MySQL
- Omówienie
- 6.5. Oddzielanie danych numerycznych od danych znakowych
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- SQL Server
- Omówienie
- 6.6. Określanie, czy łańcuch jest ciągiem alfanumerycznym
- Problem
- Rozwiązanie
- DB2
- MySQL
- Oracle i PostgreSQL
- SQL Server
- Omówienie
- DB2, Oracle, PostgreSQL i SQL Server
- MySQL
- 6.7. Określanie inicjałów na podstawie całych imion i nazwisk
- Problem
- Rozwiązanie
- DB2
- MySQL
- Oracle i PostgreSQL
- SQL Server
- Omówienie
- DB2
- Oracle i PostgreSQL
- MySQL
- 6.8. Sortowanie kolumn według wybranych fragmentów łańcuchów
- Problem
- Rozwiązanie
- DB2, Oracle, MySQL i PostgreSQL
- SQL Server
- Omówienie
- 6.9. Sortowanie danych według liczb zapisanych w łańcuchach
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- Omówienie
- 6.10. Tworzenie listy wartości oddzielonych przecinkami z danych zawartych w wierszach tabeli
- Problem
- Rozwiązanie
- DB2
- MySQL
- Oracle
- PostgreSQL i SQL Server
- Omówienie
- MySQL
- PostgreSQL i SQL Server
- Oracle
- 6.11. Konwertowanie danych oddzielonych przecinkami na wielowartościową listę IN
- Problem
- Rozwiązanie
- DB2
- MySQL
- Oracle
- PostgreSQL
- SQL Server
- Omówienie
- DB2 i SQL Server
- MySQL
- Oracle
- PostgreSQL
- 6.12. Sortowanie znaków w łańcuchach w porządku alfabetycznym
- Problem
- Rozwiązanie
- DB2
- MySQL
- Oracle
- PostgreSQL
- SQL Server
- Omówienie
- SQL Server
- MySQL
- Oracle
- PostgreSQL i DB2
- 6.13. Identyfikowanie łańcuchów, które można traktować jak liczby
- Problem
- Rozwiązanie
- DB2
- MySQL
- Oracle
- PostgreSQL
- SQL Server
- Omówienie
- DB2, Oracle i PostgreSQL
- MySQL
- 6.14. Odnajdywanie n-tego podłańcucha na liście oddzielonej przecinkami
- Problem
- Rozwiązanie
- DB2
- MySQL
- Oracle
- PostgreSQL
- SQL Server
- Omówienie
- DB2
- MySQL
- SQL Server
- Oracle
- PostgreSQL
- 6.15. Przetwarzanie adresów IP
- Problem
- Rozwiązanie
- DB2
- MySQL
- Oracle
- PostgreSQL
- SQL Server
- Omówienie
- 6.16. Porównywanie łańcuchów znaków na podstawie brzmienia
- Problem
- Rozwiązanie
- Omówienie
- 6.17. Wyszukiwanie tekstu niepasującego do wzorca
- Problem
- Rozwiązanie
- Omówienie
- 6.18. Podsumowanie
- 6.1. Przechodzenie pomiędzy znakami łańcucha
- Rozdział 7. Praca z liczbami
- 7.1. Wyznaczanie wartości średniej
- Problem
- Rozwiązanie
- Omówienie
- Patrz także
- 7.2. Identyfikacja minimalnej i maksymalnej wartości w kolumnie
- Problem
- Rozwiązanie
- Omówienie
- Patrz także
- 7.3. Sumowanie wartości składowanych w kolumnie
- Problem
- Rozwiązanie
- Omówienie
- Patrz także
- 7.4. Zliczanie wierszy tabeli
- Problem
- Rozwiązanie
- Omówienie
- Patrz także
- 7.5. Zliczanie różnych wartości w kolumnie
- Problem
- Rozwiązanie
- Omówienie
- 7.6. Generowanie sum bieżących
- Problem
- Rozwiązanie
- Omówienie
- 7.7. Generowanie iloczynów bieżących
- Problem
- Rozwiązanie
- Omówienie
- 7.8. Wygładzanie serii wartości
- Problem
- Rozwiązanie
- Omówienie
- 7.9. Wyznaczanie wartości modalnej (dominanty)
- Problem
- Rozwiązanie
- DB2, MySQL, PostgreSQL i SQL Server
- Oracle
- Omówienie
- DB2, MySQL, PostgreSQL i SQL Server
- Oracle
- Patrz także
- 7.10. Wyznaczanie mediany
- Problem
- Rozwiązanie
- DB2 i PostgreSQL
- SQL Server
- MySQL
- Oracle
- Omówienie
- Oracle, PostgreSQL, SQL Server i DB2
- MySQL
- 7.11. Określanie procentowego udziału w wartości łącznej
- Problem
- Rozwiązanie
- MySQL i PostgreSQL
- DB2, Oracle i SQL Server
- Omówienie
- MySQL i PostgreSQL
- DB2, Oracle i SQL Server
- 7.12. Agregowanie kolumn zawierających wartości NULL
- Problem
- Rozwiązanie
- Omówienie
- 7.13. Wyznaczanie wartości średnich z wyłączeniem wartości spoza określonego przedziału
- Problem
- Rozwiązanie
- MySQL i PostgreSQL
- DB2, Oracle i SQL Server
- Omówienie
- MySQL i PostgreSQL
- DB2, Oracle i SQL Server
- 7.14. Wyodrębnianie liczb z łańcuchów alfanumerycznych
- Problem
- Rozwiązanie
- DB2
- Oracle, SQL Server i PostgreSQL
- MySQL
- Omówienie
- 7.15. Modyfikowanie wartości uwzględnianych w sumach bieżących
- Problem
- Rozwiązanie
- Omówienie
- 7.16. Znajdowanie wartości odstających metodą mediany odchylenia bezwzględnego
- Problem
- Rozwiązanie
- SQL Server
- PostgreSQL i DB2
- Oracle
- MySQL
- Omówienie
- 7.17. Wyszukiwanie anomalii przy użyciu prawa Benforda
- Problem
- Rozwiązanie
- Omówienie
- 7.18. Podsumowanie
- 7.1. Wyznaczanie wartości średniej
- Rozdział 8. Działania na datach
- 8.1. Dodawanie i odejmowanie dni, miesięcy i lat
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- 8.2. Określanie liczby dni pomiędzy dwiema datami
- Problem
- Rozwiązanie
- DB2
- Oracle i PostgreSQL
- MySQL i SQL Server
- Omówienie
- 8.3. Określanie liczby dni roboczych pomiędzy dwiema datami
- Problem
- Rozwiązanie
- DB2
- MySQL
- Oracle
- PostgreSQL
- SQL Server
- Omówienie
- 8.4. Określanie liczby miesięcy lub lat dzielących dwie daty
- Problem
- Rozwiązanie
- DB2 i MySQL
- Oracle
- PostgreSQL
- SQL Server
- Omówienie
- DB2, MySQL i PostgreSQL
- Oracle i SQL Server
- 8.5. Określanie liczby sekund, minut lub godzin dzielących dwie daty
- Problem
- Rozwiązanie
- DB2
- MySQL
- SQL Server
- Oracle i PostgreSQL
- Omówienie
- 8.6. Zliczanie wystąpień poszczególnych dni tygodnia w roku
- Problem
- Rozwiązanie
- DB2
- MySQL
- Oracle
- PostgreSQL
- SQL Server
- Omówienie
- DB2
- MySQL
- Oracle
- PostgreSQL
- SQL Server
- 8.7. Określanie różnicy dat między rekordem bieżącym a następnym
- Problem
- Rozwiązanie
- DB2
- MySQL i SQL Server
- Oracle
- PostgreSQL
- Omówienie
- 8.8. Podsumowanie
- 8.1. Dodawanie i odejmowanie dni, miesięcy i lat
- Rozdział 9. Przetwarzanie dat
- 9.1. Określanie, czy dany rok jest rokiem przestępnym
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- 9.2. Określanie liczby dni w roku
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- 9.3. Wyodrębnianie jednostek czasu z dat wejściowych
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- 9.4. Określanie pierwszego i ostatniego dnia miesiąca
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- 9.5. Określanie wszystkich dat występowania konkretnego dnia tygodnia w ciągu danego roku
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- 9.6. Określanie dat pierwszego i ostatniego wystąpienia określonego dnia tygodnia w danym miesiącu
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- DB2 i SQL Server
- Oracle
- PostgreSQL i MySQL
- 9.7. Tworzenie kalendarza
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- DB2
- Oracle
- MySQL, PostgreSQL i SQL Server
- 9.8. Generowanie dat rozpoczynających i kończących poszczególne kwartały danego roku
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- DB2
- Oracle
- PostgreSQL, MySQL i SQL Server
- 9.9. Określanie daty początkowej i końcowej dla danego kwartału
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- 9.10. Uzupełnianie brakujących dat
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- Omówienie
- DB2
- Oracle
- PostgreSQL
- MySQL
- SQL Server
- 9.11. Przeszukiwanie według określonych jednostek czasu
- Problem
- Rozwiązanie
- DB2 i MySQL
- Oracle i PostgreSQL
- SQL Server
- Omówienie
- 9.12. Porównywanie rekordów według określonych fragmentów dat
- Problem
- Rozwiązanie
- DB2
- Oracle i PostgreSQL
- MySQL
- SQL Server
- Omówienie
- 9.13. Identyfikacja wzajemnie pokrywających się przedziałów czasowych
- Problem
- Rozwiązanie
- DB2, PostgreSQL i Oracle
- MySQL
- SQL Server
- Omówienie
- 9.14. Podsumowanie
- 9.1. Określanie, czy dany rok jest rokiem przestępnym
- Rozdział 10. Praca z przedziałami
- 10.1. Lokalizowanie przedziałów w ramach ciągów wartości
- Problem
- Rozwiązanie
- Omówienie
- DB2, MySQL, PostgreSQL, SQL Server i Oracle
- 10.2. Odnajdywanie różnic pomiędzy wierszami należącymi do tej samej grupy lub partycji danych
- Problem
- Rozwiązanie
- Omówienie
- 10.3. Lokalizowanie początków i końców przedziałów wartości następujących bezpośrednio po sobie
- Problem
- Rozwiązanie
- Omówienie
- 10.4. Uzupełnianie brakujących wartości w przedziale
- Problem
- Rozwiązanie
- DB2
- Oracle
- PostgreSQL i MySQL
- SQL Server
- Omówienie
- 10.5. Generowanie kolejnych wartości liczbowych
- Problem
- Rozwiązanie
- DB2 i SQL Server
- Oracle
- PostgreSQL
- Omówienie
- DB2 i SQL Server
- Oracle
- PostgreSQL
- 10.6. Podsumowanie
- 10.1. Lokalizowanie przedziałów w ramach ciągów wartości
- Rozdział 11. Zaawansowane przeszukiwanie
- 11.1. Podział zbioru wynikowego na strony
- Problem
- Rozwiązanie
- Omówienie
- 11.2. Pomijanie n wierszy tabeli
- Problem
- Rozwiązanie
- Omówienie
- 11.3. Stosowanie logiki alternatywy w zapytaniach wykorzystujących złączenia zewnętrzne
- Problem
- Rozwiązanie
- Omówienie
- DB2, MySQL, PostgreSQL i SQL Server
- 11.4. Identyfikacja par odwrotnych w przetwarzanym zbiorze wierszy
- Problem
- Rozwiązanie
- Omówienie
- 11.5. Wybieranie n pierwszych rekordów
- Problem
- Rozwiązanie
- Omówienie
- 11.6. Odnajdywanie rekordów z największymi i najmniejszymi wartościami
- Problem
- Rozwiązanie
- DB2, Oracle i SQL Server
- Omówienie
- DB2, Oracle i SQL Server
- 11.7. Badanie przyszłych wierszy
- Problem
- Rozwiązanie
- Omówienie
- Patrz także
- 11.8. Przenoszenie wartości wierszy
- Problem
- Rozwiązanie
- Omówienie
- 11.9. Tworzenie rankingu rezultatów
- Problem
- Rozwiązanie
- Omówienie
- 11.10. Eliminowanie powtórzeń
- Problem
- Rozwiązanie
- Klasyczne rozwiązania
- Omówienie
- Klasyczne rozwiązania
- 11.11. Odnajdywanie wartości skoczka
- Problem
- Rozwiązanie
- DB2 i SQL Server
- Oracle
- Omówienie
- DB2 i SQL Server
- Oracle
- 11.12. Generowanie prostych prognoz
- Problem
- Rozwiązanie
- DB2, MySQL i SQL Server
- Oracle
- PostgreSQL
- Omówienie
- DB2, MySQL i SQL Server
- Oracle
- PostgreSQL
- 11.13. Podsumowanie
- 11.1. Podział zbioru wynikowego na strony
- Rozdział 12. Raportowanie i przekształcanie danych
- 12.1. Konwertowanie zbioru wynikowego do postaci pojedynczego wiersza
- Problem
- Rozwiązanie
- Omówienie
- 12.2. Konwertowanie zbioru wynikowego do postaci zbioru wielowierszowego
- Problem
- Rozwiązanie
- Omówienie
- 12.3. Odwrotna transpozycja zbioru wynikowego
- Problem
- Rozwiązanie
- Omówienie
- 12.4. Odwrotna transpozycja zbioru danych do postaci zbioru jednokolumnowego
- Problem
- Rozwiązanie
- Omówienie
- 12.5. Eliminowanie powtórzeń ze zbioru wynikowego
- Problem
- Rozwiązanie
- Omówienie
- 12.6. Przekształcanie zbioru wynikowego w celu ułatwienia obliczeń na wierszach
- Problem
- Rozwiązanie
- Omówienie
- 12.7. Tworzenie bloków danych tej samej wielkości
- Problem
- Rozwiązanie
- Omówienie
- 12.8. Tworzenie predefiniowanej liczby bloków danych
- Problem
- Rozwiązanie
- Omówienie
- 12.9. Tworzenie histogramów poziomych
- Problem
- Rozwiązanie
- DB2
- Oracle, PostgreSQL i MySQL
- SQL Server
- Omówienie
- 12.10. Tworzenie histogramów pionowych
- Problem
- Rozwiązanie
- Omówienie
- 12.11. Zwracanie zbiorów wynikowych bez kolumn wykorzystywanych w procesie grupowania
- Problem
- Rozwiązanie
- Omówienie
- 12.12. Wyznaczanie prostych sum częściowych
- Problem
- Rozwiązanie
- DB2 i Oracle
- SQL Server i MySQL
- PostgreSQL
- Omówienie
- DB2 i Oracle
- SQL Server i MySQL
- PostgreSQL
- 12.13. Wyznaczanie sum częściowych dla wszystkich możliwych kombinacji wyrażeń
- Problem
- Rozwiązanie
- DB2
- Oracle
- SQL Server
- PostgreSQL
- MySQL
- Omówienie
- Oracle, DB2 i SQL Server
- MySQL
- 12.14. Identyfikowanie wierszy niebędących sumami częściowymi
- Problem
- Rozwiązanie
- Omówienie
- 12.15. Konwertowanie wierszy na wersję bitową za pomocą wyrażeń CASE
- Problem
- Rozwiązanie
- Omówienie
- 12.16. Tworzenie tzw. macierzy rzadkich
- Problem
- Rozwiązanie
- Omówienie
- 12.17. Grupowanie wierszy według określonych jednostek czasu
- Problem
- Rozwiązanie
- Omówienie
- 12.18. Jednoczesne agregowanie danych według różnych grup i bloków
- Problem
- Rozwiązanie
- Omówienie
- 12.19. Agregowanie zmiennych (ruchomych) przedziałów wartości
- Problem
- Rozwiązanie
- DB2 i Oracle
- MySQL
- PostgreSQL i SQL Server
- Omówienie
- DB2, MySQL i Oracle
- PostgreSQL i SQL Server
- 12.20. Obracanie zbioru wynikowego zawierającego sumy częściowe
- Problem
- Rozwiązanie
- DB2 i Oracle
- SQL Server
- PostgreSQL
- MySQL
- Omówienie
- 12.21. Podsumowanie
- 12.1. Konwertowanie zbioru wynikowego do postaci pojedynczego wiersza
- Rozdział 13. Zapytania hierarchiczne
- 13.1. Wyrażanie relacji rodzic potomek
- Problem
- Rozwiązanie
- DB2, Oracle i PostgreSQL
- MySQL
- SQL Server
- Omówienie
- 13.2. Wyrażanie relacji potomek rodzic dziadek
- Problem
- Rozwiązanie
- DB2, PostgreSQL i SQL Server
- MySQL
- Oracle
- Omówienie
- Oracle
- 13.3. Tworzenie hierarchicznego widoku tabeli
- Problem
- Rozwiązanie
- DB2, PostgreSQL i SQL Server
- MySQL
- Oracle
- Omówienie
- DB2, MySQL, PostgreSQL i SQL Server
- Oracle
- 13.4. Odnajdywanie wszystkich wierszy potomnych dla danego wiersza rodzica
- Problem
- Rozwiązanie
- DB2, PostgreSQL i SQL Server
- Oracle
- Omówienie
- DB2, MySQL, PostgreSQL i SQL Server
- Oracle
- 13.5. Określanie wierszy występujących w rolach liści, gałęzi i korzeni
- Problem
- Rozwiązanie
- DB2, PostgreSQL, MySQL i SQL Server
- Oracle
- Omówienie
- DB2, PostgreSQL, MySQL i SQL Server
- Oracle
- 13.6. Podsumowanie
- 13.1. Wyrażanie relacji rodzic potomek
- Rozdział 14. Rozmaitości
- 14.1. Tworzenie raportów krzyżowych za pomocą operatora PIVOT systemu SQL Server
- Problem
- Rozwiązanie
- Omówienie
- 14.2. Odtwarzanie układu raportów krzyżowych za pomocą operatora UNPIVOT systemu SQL Server
- Problem
- Rozwiązanie
- 14.3. Transponowanie zbiorów wynikowych za pomocą klauzuli MODEL systemu Oracle
- Problem
- Rozwiązanie
- Omówienie
- 14.4. Wyodrębnianie z łańcucha elementów o nieustalonym położeniu
- Problem
- Rozwiązanie
- Omówienie
- 14.5. Znajdowanie liczby dni w roku (rozwiązanie alternatywne tylko dla systemu Oracle)
- Problem
- Rozwiązanie
- Omówienie
- 14.6. Przeszukiwanie danych wejściowych pod kątem zawierania łańcuchów alfanumerycznych
- Problem
- Rozwiązanie
- Omówienie
- 14.7. Konwertowanie liczb całkowitych na system dwójkowy w systemie Oracle
- Problem
- Rozwiązanie
- Omówienie
- 14.8. Obracanie zbioru wynikowego z wartościami rankingowymi
- Problem
- Rozwiązanie
- Omówienie
- 14.9. Wstawianie nagłówków kolumn w dwukrotnie obróconych zbiorach wynikowych
- Problem
- Rozwiązanie
- Omówienie
- 14.10. Konwertowanie podzapytań skalarnych na podzapytania złożone w systemie Oracle
- Problem
- Rozwiązanie
- Omówienie
- 14.11. Przenoszenie uszeregowanych danych do osobnych wierszy
- Problem
- Rozwiązanie
- Omówienie
- 14.12. Wyznaczanie procentowych stosunków poszczególnych wartości względem sumy wszystkich wartości
- Problem
- Rozwiązanie
- Omówienie
- 14.13. Testowanie występowania wartości w grupie
- Problem
- Rozwiązanie
- Omówienie
- 14.14. Podsumowanie
- 14.1. Tworzenie raportów krzyżowych za pomocą operatora PIVOT systemu SQL Server
- Dodatek A Przypomnienie funkcji okna
- Grupowanie
- Definicja grupy w języku SQL
- Grupy nie mogą być puste
- Grupy i różne wartości
- Funkcja COUNT nigdy nie zwraca zera
- Paradoksy
- Relacje łączące klauzule SELECT i GROUP BY
- Definicja grupy w języku SQL
- Tworzenie okien
- Prosty przykład
- Kolejność przetwarzania składników zapytań
- Partycje
- Skutki występowania wartości NULL
- Kiedy kolejność ma znaczenie
- Klauzula ramkowania
- Ostatnie słowo o ramkowaniu
- Czytelność + Wydajność = Moc
- Generowanie zbiorów bazowych
- Grupowanie
- Dodatek B Wyrażenia tablicowe (CTE)
- Podzapytania
- Wyrażenia tablicowe
- Podsumowanie
- O autorach
- Kolofon
- Назва: SQL. Zapytania i techniki dla bazodanowców. Receptury. Wydanie II
- Автор: Anthony Molinaro, Robert de Graaf
- Оригінальна назва: SQL Cookbook: Query Solutions and Techniques for All SQL Users, 2nd Edition
- Переклад: Mikołaj Szczepaniak, Piotr Cieślak
- ISBN: 978-83-283-7848-3, 9788328378483
- Дата видання: 2021-08-10
- Формат: Eлектронна книга
- Ідентифікатор видання: sqlzr2
- Видавець: Helion