SAS Hash Tables w pigułce
|
|
- Eleonora Żurawska
- 8 lat temu
- Przeglądów:
Transkrypt
1 , SAS Institute Polska czerwiec 2014 Spis treści 1. Wstęp Składnia Hash tables Deklaracja obiektu hash table Metody w hash table Atrybuty hash table Iteracyjny dostęp do danych Deklaracja obiektu hiter Metody obiektu hiter Przykłady Deklarowanie hash table Użycie iteratora Ładowanie i szukanie Sortowanie danych wynikowych... 7
2 2 1. Wstęp Hash Tables znajduje swoje zastosowanie wszędzie tam, gdzie istnieje potrzebna przyspieszenia wykonywania operacji oraz zwiększenia wydajności przetwarzania danych. Pozwala w znaczący sposób przyspieszyć takie operacje jak łączenie tabel, wyszukiwanie podzbiorów oraz agregacje danych. Dzieje się tak, ponieważ technika ta kładzie nacisk na optymalne wykorzystanie pamięci poprzez tworzenie dedykowanej struktury kluczy przechowywanej w pamięci, co pozwala na szybki odczyt wartości kluczy. 2. Składnia Hash tables 2.1. Deklaracja obiektu hash table Hash tables można zadeklarować wykorzystując jeden z dwóch sposobów. Stosując wyrażenie declare, a następnie operator _new_: declare hash obiekt; obiekt= _new_ hash(); lub używając tylko wyrażenia declare: declare hash obiekt(); Poniżej znajduje się lista opcjonalnych argumentów, które mogą być wykorzystane w wyrażeniu declare: dataset: Określa jaki zbiór ma być załadowany do hash table. hashexp: Określa rozmiar hash table. Liczba n jest potęgą liczby 2. Obiekt hash będzie składał się z 2 n kubełków. Domyślnie n=8, zatem hash ma 256 kubełków. ordered: Określa w jaki sposób mają być posortowane dane przechowywane wewnątrz hash table: a ascending YES Y - porządek rosnący d descending porządek malejący NO N brak porządku (wartość domyślna) duplicate: Określa czy podczas ładowania danych do hash table należy ignorować duplikaty kluczy. Żadna z poniższych opcji nie jest domyślnie ustawiona. replace r przechowuje ostatnią wartość duplikatu klucza error e zwraca błąd do loga w przypadku gdy zostanie znaleziony duplikat klucza multidata: Określa czy możliwe jest zastosowanie w kluczu wielokrotnych wartości danych. YES Y umożliwia wiele wartości dla każdego klucza NO N pozwala tylko na jeden element danych dla każdego klucza (wartość domyślna) SAS Institute Polska Strona 2 z 7
3 Metody w hash table Metoda definekey pozwala na zadeklarowanie nazw zmiennych, które tworzą klucz: rc=obj.definekey( klucz1,, klucz_n ); rc=obj.definekey(all: yes ); Metoda definedata pozwala na zadeklarowanie nazw zmiennych, których wartości skojarzone są z kluczem: rc=obj.definedata( zmienna_1,, zmienna_n ); rc=obj.definedata(all: yes ); Metoda definedone kończy fazę deklarowania i inicjalizowania hash table: rc=obj.definedone(); Metoda add dodaje do hash table dane i zapisuje je pod daną kombinacją kluczy: rc=obj.add(); rc=obj.add(key: klucz1,,key: klucz_n data: zmienna_1,,data: zmienna_m ); Metoda replace dodaje do hash table dane i zapisuje je pod daną kombinacją kluczy. Jeśli w hash table znajdują się już dane o danym kluczu to zostaną one napisane: rc=obj.replace(); rc=obj.replace(key: klucz1,,key: klucz_n data: zmienna_1,,data: zmienna_m ); Metoda find wyszukuje w hash table wpis odpowiadający podanej kombinacji kluczy i w przypadku, gdy zakończy się sukcesem zwraca zmienną do wektora PDV: rc=obj.find(); rc=obj.find(key: klucz1,,key: klucz_n ); Metoda check wyszukuje w hash table wpis odpowiadający podanej kombinacji kluczy i w przypadku, gdy zakończy się sukcesem zwraca wartość 0: rc=obj.check(); rc=obj.check(key: klucz1,,key: klucz_n ); Metoda remove usuwa z hash table rekord o podanych wartościach klucza: rc=obj.remove(); rc=obj.remove(key: klucz1,,key: klucz_n ); Metoda output wypisuje wartość hash table do zbioru wynikowego: rc=obj.output(dataset: zbior_wynikowy ); Metoda clear usuwa wpisy z obiektu hash bez usuwanie obiektu hash: rc=obj.clear(); SAS Institute Polska Strona 3 z 7
4 4 Metoda sum pobiera sumę dla danego klucza i przetrzymuje go w data stepie pod zmienną sum_var: rc=obj.sum(); rc=obj.sum(key: klucz1,,key: klucz_n sum:sum_var); Metoda ref wykonuje operację wyszukiwania aktualnego klucza. Jeśli klucza nie ma w obiekcie hash to zostanie on dodany: rc=obj.ref(); rc=obj.ref(key: klucz1,,key: klucz_n ); Metoda equals określa czy dwa obiekty hash są równe. Jeśli są równe to zmienna res_var zostanie ustawiona na 1. W przypadku gdy nie będą równe zmienna ta przyjmie wartość 0 : rc=obj.equals(hash: hash_obj. Result: res_var); 2.3. Atrybuty hash table Atrybut num_items przechowuje informację o ilości elementów trzymanych w hash table: i=obj.num_items; Atrybut item_size uzyskuje rozmiar elementu w bajtach: i=obj.num_items; Atrybut delete usuwa cały obiekt hash table z pamięci: rc=obj.delete(); 3. Iteracyjny dostęp do danych 3.1. Deklaracja obiektu hiter Iterator pozwala na sekwencyjny dostęp do danych. Aby można było go użyć należy pierw zadeklarować obiekt. Obiekt typu hiter deklarujemy używając poniższej składni: declare hiter nazwa_obiektu_hiter( nazwa_obiektu_hash ); 3.2. Metody obiektu hiter Metoda first zwraca pierwszy rekord z hash table. rc= nazwa_obiektu_hiter.first(); Metoda last zwraca ostatni rekord z hash table. rc= nazwa_obiektu_hiter.last(); SAS Institute Polska Strona 4 z 7
5 5 Metoda next zwraca następny rekord z hash table. rc= nazwa_obiektu_hiter.next(); Metoda prev zwraca poprzedni rekord z hash table. rc= nazwa_obiektu_hiter.prev(); 4. Przykłady 4.1. Deklarowanie hash table set sashelp.class (obs=1); declare hash ht(dataset:"sashelp.class"); ht.definekey("name"); ht.definedata(all:"yes"); ht.definedone(); name= "Janet"; rc=ht.find(); put rc= name= sex= age= height= weight=; rc= ht.find(key:"philip"); put rc= name= sex= age= height= weight=; rc= ht.find(key:"nemo"); put rc= name= sex= age= height= weight=; rc=0 Name=Janet Sex=F Age=15 Height=62.5 Weight=112.5 rc=0 Name=Philip Sex=M Age=16 Height=72 Weight=150 rc= Name=Philip Sex=M Age=16 Height=72 Weight= Użycie iteratora set sashelp.class (obs=1); declare hash obj(dataset:"sashelp.class", ordered: "Y"); declare hiter iter_obj("obj"); ht.definekey("name"); ht.definedata(all:"yes"); ht.definedone(); rc=iter_obj.first(); do while (rc=0); put name= sex= age= height= weight=; rc=iter_obj.next(); end; Pętla wypisuje dane do logu. Wykonuje się dopóki metoda next() zwróci liczbę różną od 0, czyli aż wypisane zostaną wszystkie rekordy trzymane w hash table. /* Create Input Data Set */ data patients; length patient_id $ 16 discharge 8; input patient_id discharge:date9.; datalines; SAS Institute Polska Strona 5 z 7
6 6 ; /* Load and iterate over hash */ length patient_id $ 16 discharge 8; declare hash ht(dataset:"patients", ordered:"ascending"); ht.definekey("patient_id"); ht.definedata("patient_id", "discharge"); ht.definedone(); declare hiter iter("ht"); rc = iter.first(); do while (rc=0); put patient_id discharge:date9.; rc = iter.next(); end; 4.3. Ładowanie i szukanie /* Create Input Data Set */ data names; length first last title $ 16 born died 8; input first last born died title & $16.; datalines; William Blake Spring John Keats To Autumn Mary Shelley Frankenstein ; /* Load and Find */ length first last title $ 16; length born died 8; declare hash ht(dataset:"names"); ht.definekey("first", "last"); ht.definedata("born", "died", "title"); ht.definedone(); /* Find John Keats */ first = "John"; last = "Keats"; rc = ht.find(); if rc = 0 then put "Found " first last title $QUOTE.; else put "Not Found " first last; Found John Keats "To Autumn" SAS Institute Polska Strona 6 z 7
7 Sortowanie danych wynikowych /* Add to hash and then output */ length patient_id $ 16 discharge 8; if _N_ = 1 then do; declare hash ht(ordered:"a"); ht.definekey("patient_id"); ht.definedata("patient_id", "discharge"); ht.definedone(); end; infile datalines eof=output; input patient_id discharge:date9.; ht.add(); /* ht.add() same as: ht.add(key:patient_id, data:patient_id, data:discharge); */ return; output: ht.output(dataset:"sorted_ids"); datalines; ; set sorted_ids; put patient_id discharge:date9.; SAS Institute Polska Strona 7 z 7
SAS Podstawowe informacje przed ćwiczeniem 1
SAS Podstawowe informacje przed ćwiczeniem 1 Zasady tworzenia programów każda instrukcja zakończona się średnikiem małe i duże litery nie są rozróżniane instrukcje mogą być kontynuowane w następnej linii
STROJENIE PRZETWARZAŃ SAS
STROJENIE PRZETWARZAŃ SAS PIOTR BEDNARCZYK, ORANGE POLSKA S.A. Copyright 2014, SAS Institute Inc. All rights reserved. WSTĘP AGENDA Analiza logów przetwarzań Obiekt Hash DATA STEP czy PROC SQL? Podzapytania
Stosowanie indeksów ma swoje korzyści, ale bywa również kosztowne.
INDEKSY Indeks to plik (o rozszerzeniu sas7bndx) powiązany ze zbiorem, który pozwala na bezpośredni dostęp do obserwacji. Przechowuje wartości obserwacji w porządku rosnącym oraz położenie obserwacji w
ZESTAW 1 SAS 4GL. Język stworzony na potrzeby przetwarzania dużych zbiorów danych. Składają się nań:
ZESTAW 1 SAS 4GL Język stworzony na potrzeby przetwarzania dużych zbiorów danych. Składają się nań: Instrukcje Procedury Definicje zmiennych Opcje systemowe Stałe i znaki specjalne WAŻNE: Każda instrukcja
Bloki anonimowe w PL/SQL
Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia
SAS Podstawowe informacje przed ćwiczeniem 2
SAS Podstawowe informacje przed ćwiczeniem 2 Wczytywanie i zapisywanie plików tekstowych przy pomocy PROC IMPORT PROC IMPORT DATAFILE="filename" TABLE="tablename" OUT=SAS data set < (SAS data
Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)
Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie
Oracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 9 Kolekcje Operacje na kolekcjach Testowanie kolekcji Kolekcje w bazie danych Funkcje tabelaryczne Kolekcje wielopoziomowe - 2 -
Tabela wewnętrzna - definicja
ABAP/4 Tabela wewnętrzna - definicja Temporalna tabela przechowywana w pamięci operacyjnej serwera aplikacji Tworzona, wypełniana i modyfikowana jest przez program podczas jego wykonywania i usuwana, gdy
Języki formalne i techniki translacji
Języki formalne i techniki translacji Laboratorium - Projekt Termin oddania: ostatnie zajęcia przed 17 stycznia 2016 Wysłanie do wykładowcy: przed 23:59 28 stycznia 2016 Używając BISON-a i FLEX-a napisz
Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u
Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u będziemy używać w taki sam sposób, jak wbudowanych funkcji
Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać
MatLab część III 1 Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać komentarze poprzedzone znakiem % Skrypty
Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych
Języki programowania wysokiego poziomu PHP cz.4. Bazy danych PHP i bazy danych PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł
Techniki programowania INP001002Wl rok akademicki 2017/18 semestr letni. Wykład 5. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2017/18 semestr letni Wykład 5 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Standardowa biblioteka szablonów (Standard Template
Kolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Rozszerzenie obiektowe w SZBD Oracle
Rozszerzenie obiektowe w SZBD Oracle Cześć 2. Kolekcje Kolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Malinowski Nowak Kowalski tablica zagnieżdżona (ang.
Materiały do laboratorium MS ACCESS BASIC
Materiały do laboratorium MS ACCESS BASIC Opracowała: Katarzyna Harężlak Access Basic jest językiem programowania wykorzystywanym w celu powiązania obiektów aplikacji w jeden spójny system. PROCEDURY I
Przykładowe B+ drzewo
Przykładowe B+ drzewo 3 8 1 3 7 8 12 Jak obliczyć rząd indeksu p Dane: rozmiar klucza V, rozmiar wskaźnika do bloku P, rozmiar bloku B, liczba rekordów w indeksowanym pliku danych r i liczba bloków pliku
Indeksowanie w bazach danych
w bazach Katedra Informatyki Stosowanej AGH 5grudnia2013 Outline 1 2 3 4 Czym jest indeks? Indeks to struktura, która ma przyspieszyć wyszukiwanie. Indeks definiowany jest dla atrybutów, które nazywamy
Informatyka w selekcji - Wykªad 4
Informatyka w selekcji - Wykªad 4 Plan wykªadu SAS 1. Praca z programem 2. Edycja danych 3. Procedury graczne 4. Analiza w pakiecie SAS na»ywo, Wykªad 5 2/36 Praca z programem, Wykªad 5 3/36 Praca z programem
Część 1: OLAP. Raport z zajęć laboratoryjnych w ramach przedmiotu Hurtownie i eksploracja danych
Łukasz Przywarty 171018 Wrocław, 05.12.2012 r. Grupa: CZW/N 10:00-13:00 Raport z zajęć laboratoryjnych w ramach przedmiotu Hurtownie i eksploracja danych Część 1: OLAP Prowadzący: dr inż. Henryk Maciejewski
Lista, Stos, Kolejka, Tablica Asocjacyjna
Lista, Stos, Kolejka, Tablica Asocjacyjna Listy Lista zbiór elementów tego samego typu może dynamicznie zmieniać rozmiar, pozwala na dostęp do poszczególnych elementów Typowo dwie implementacje: tablicowa,
Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia
Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Składowe wyzwalacza ( ECA ): określenie zdarzenia ( Event ) określenie
Autor: Joanna Karwowska
Autor: Joanna Karwowska Klucz podstawowy PRIMARY KEY Klucz kandydujący UNIQUE Klucz alternatywny - klucze kandydujące, które nie zostały wybrane na klucz podstawowy Klucz obcy - REFERENCES Tworząc tabelę,
Bloki anonimowe w PL/SQL
Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia
Wprowadzenie do SAS. Jak zacząć? Enhanced Editor (1) Uruchamianie programu. Ćwiczenie 3. Definiowanie bibliotek
Wprowadzenie do SAS Część II: Elementy języka SAS 4GL Rafał Latkowski Jak zacząć? 2 Enhanced Editor (1) Uruchamianie programu Zaznaczyć blok (lub bez zaznaczania, gdy chcemy wykonać całą zawartość pliku).
Wykład 3 Składnia języka C# (cz. 2)
Wizualne systemy programowania Wykład 3 Składnia języka C# (cz. 2) 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Metody 2 Metody W C# nie jest
Oracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 2 Kusory Wprowadzenie Kursory użytkownika Kursory domyślne Zmienne kursora Wyrażenia kursora - 2 - Wprowadzenie Co to jest kursor?
Język PL/SQL. Rozdział 2. Kursory
Język PL/SQL. Rozdział 2. Kursory Deklarowanie kursora, otwieranie kursora, pobieranie z kursora, zamykanie kursora, zmienne kursorowe, wyrażenie CURSOR, kursory niejawne. 1 Kursor jawny Każde zapytanie
Składowane procedury i funkcje
Składowane procedury i funkcje Procedury i funkcje są zestawem poleceń SQL, które są przechowywane na serwerze (tak jak dane w tablicach). Istnieją sytuacje, kiedy procedury i funkcje są szczególnie przydatne.
DECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ];
Braki w SQL obsługi zdarzeń i sytuacji wyjątkowych funkcji i procedur użytkownika definiowania złożonych ograniczeń integralnościowych Proceduralny SQL Transact- SQL używany przez Microsoft SQL Server
77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.
77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych: jeden do wielu, jeden do jednego, wiele
Algorytmy i struktury danych. Wykład 6 Tablice rozproszone cz. 2
Algorytmy i struktury danych Wykład 6 Tablice rozproszone cz. 2 Na poprzednim wykładzie Wiele problemów wymaga dynamicznych zbiorów danych, na których można wykonywać operacje: wstawiania (Insert) szukania
KORPORACYJNE SYSTEMY ZARZĄDZANIA INFORMACJĄ
KORPORACYJNE SYSTEMY ZARZĄDZANIA INFORMACJĄ Wykład 3 Katedra Inżynierii Komputerowej Jakub Romanowski jakub.romanowski@kik.pcz.pl POBIERANIE DANYCH C/AL Poniższe funkcje używane są do operacji pobierania
PHP: bloki kodu, tablice, obiekty i formularze
1 PHP: bloki kodu, tablice, obiekty i formularze SYSTEMY SIECIOWE Michał Simiński 2 Bloki kodu Blok if-else Switch Pętle Funkcje Blok if-else 3 W PHP blok if i blok if-else wyglądają tak samo i funkcjonują
SQL 4 Structured Query Lenguage
Wykład 5 SQL 4 Structured Query Lenguage Instrukcje sterowania danymi Bazy Danych - A. Dawid 2011 1 CREATE USER Tworzy nowego użytkownika Składnia CREATE USER specyfikacja użytkownika [, specyfikacja użytkownika]...
Kursor. Rozdział 10a Kursory. Otwieranie kursora. Deklarowanie kursora
Kursor Rozdział 10a Kursory Kursory i praca z kursorami, kursory jawne i niejawne, otwieranie kursora, pobieranie z kursora, zamykanie kursora, zmienne kursorowe, wyrażenie CURSOR Każde zapytanie SQL umieszczone
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 5. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni Wykład 5 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Przestrzenie nazw Standardowa biblioteka szablonów
BAZY DANYCH Cz III. Transakcje, Triggery
BAZY DANYCH Cz III Transakcje, Triggery Transakcje Definicja: Zbiór operacji (modyfikacja danych, usuwanie, wstawianie, tworzenie obiektów bazodanowych), które albo wszystkie kończone są sukcesem, albo
D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia?
D D L S Q L Co to jest DDL SQL i jakie s jego ą podstawowe polecenia? D D L S Q L - p o d s t a w y DDL SQL (Data Definition Language) Jest to zbiór instrukcji i definicji danych, którym posługujemy się
Kursor jawny. Rozdział 10a Kursory. Deklarowanie kursora (1) Deklarowanie kursora (2)
Kursor jawny Każde zapytanie SQL umieszczone w programie PL/SQL może zwrócić zero, jedną bądź wiele krotek. Aby efektywnie przetworzyć krotkizwrócone przez zapytanie korzystamy z kursorów. Kursor jest
Tytuł: PRZETWARZANIE DANYCH W SAS Autor: Wioletta Grzenda, Aneta Ptak-Chmielewska, Karol Przanowski, Urszula Zwierz. Wstęp
Tytuł: PRZETWARZANIE DANYCH W SAS Autor: Wioletta Grzenda, Aneta Ptak-Chmielewska, Karol Przanowski, Urszula Zwierz Wstęp Oddajemy do Państwa rak podręcznik do nauki pierwszych kroków przetwarzania danych
Oracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 8 Wprowadzenie Definiowanie typu obiektowego Porównywanie obiektów Tabele z obiektami Operacje DML na obiektach Dziedziczenie -
1 Obliczenia na danych
1 Obliczenia na danych 1.1 Wyrażenia w SAS 1. stałe numeryczne, czyli liczby używane w wyrażeniach SAS. Możemy je prezentować (a) w zapisie standardowym np. 5, 6.7, -2.1, (b) w notacji naukowej np. 2e5
Wprowadzenie do projektowania i wykorzystania baz danych Relacje
Wprowadzenie do projektowania i wykorzystania baz danych Relacje Katarzyna Klessa Dygresja nt. operatorów SELECT 2^2 SELECT 2^30 SELECT 50^50 2 Dygresja nt. operatorów SELECT 2^30 --Bitwise exclusive OR
W PostgreSQL mamy do dyspozycji nie tylko funkcje wbudowane, ale również możemy tworzyć własne. Są one zapisywane w tabeli systemowej pg_proc.
PROCEDURY W PostgreSQL mamy do dyspozycji nie tylko funkcje wbudowane, ale również możemy tworzyć własne. Są one zapisywane w tabeli systemowej pg_proc. \df Aby wyświetlić wszystkie funkcje z argumentami
Programowanie w SQL. definicja bloku instrukcji BEGIN...END, warunkowe wykonanie instrukcji IF...ELSE, wyrażenie CASE,
Programowanie w SQL definicja bloku instrukcji BEGIN...END, warunkowe wykonanie instrukcji IF...ELSE, wyrażenie CASE, kontynuacja działania od instrukcji za podaną etykietą GOTO etykieta, wyjście bezwarunkowe
Przykład 1: Funkcja jest obiektem, przypisanie funkcji o nazwie function() do zmiennej o nazwie funkcja1
Rachunek Prawdopodobieństwa i Statystyka lab 3. Kaja Gutowska (Kaja.Gutowska@cs.put.poznan.pl) 1. Funkcje: - Funkcje nie powinny korzystać ze zmiennych globalnych. - Funkcje powinny być możliwie krótkie.
Algorytmy i złożoności. Wykład 3. Listy jednokierunkowe
Algorytmy i złożoności Wykład 3. Listy jednokierunkowe Wstęp. Lista jednokierunkowa jest strukturą pozwalającą na pamiętanie danych w postaci uporzadkowanej, a także na bardzo szybkie wstawianie i usuwanie
ZAJĘCIA 2. Przed rozpoczęciem zajęć należy wykonać instrukcje z poprzednich laboratoriów bądź z pliku zaj2_prep.sas. FILTROWANIE WIERSZY
ZAJĘCIA 2 Przed rozpoczęciem zajęć należy wykonać instrukcje z poprzednich laboratoriów bądź z pliku zaj2_prep.sas. FILTROWANIE WIERSZY Filtrowanie wierszy pozwala wybrać do przetwarzania tylko te dane,
Administracja i programowanie pod Microsoft SQL Server 2000
Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 6 Wyzwalacze Wprowadzenie Tworzenie wyzwalacza Wyzwalacze typu,,po'' Wyzwalacze typu,,zamiast''
Dynamiczne struktury danych
Listy Zbiór dynamiczny Zbiór dynamiczny to zbiór wartości pochodzących z pewnego określonego uniwersum, którego zawartość zmienia się w trakcie działania programu. Elementy zbioru dynamicznego musimy co
Informatyka I. Wykład 4. Tablice. Dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018
Informatyka I Wykład 4. Tablice. Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Tablice Tablica uporządkowany zbiór elementów określonego typu Każdy element tablicy posiada
Laboratorium nr 4. Temat: SQL część II. Polecenia DML
Laboratorium nr 4 Temat: SQL część II Polecenia DML DML DML (Data Manipulation Language) słuŝy do wykonywania operacji na danych do ich umieszczania w bazie, kasowania, przeglądania, zmiany. NajwaŜniejsze
Realizacja ekstensji klasy. Paulina Strzelecka, Tomasz Roszkowski
Realizacja ekstensji klasy Paulina Strzelecka, Tomasz Roszkowski Przechowywanie obiektów (odwolañ do obiektów) w Javie typ wbudowany - tablica zbiór klas kontenerowych Paulina Strzelecka, Tomasz Roszkowski
PODSTAWY BAZ DANYCH 13. PL/SQL
PODSTAWY BAZ DANYCH 13. PL/SQL 1 Wprowadzenie do języka PL/SQL Język PL/SQL - rozszerzenie SQL o elementy programowania proceduralnego. Możliwość wykorzystywania: zmiennych i stałych, instrukcji sterujących
Wprowadzenie do programowania w SAS-ie oraz estymacji rozkładów
Wprowadzenie do programowania w SAS-ie oraz estymacji rozkładów Henryk.Maciejewski@pwr.wroc.pl 1 Plan Co to jest SAS System Moduły Środowisko Organizacja danych przetwarzanych w SAS Programowanie w języku
KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów
KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów SQL3 wprowadza następujące kolekcje: zbiory ( SETS ) - zestaw elementów bez powtórzeń, kolejność nieistotna listy ( LISTS ) - zestaw
KORPORACYJNE SYSTEMY ZARZĄDZANIA INFORMACJĄ
KORPORACYJNE SYSTEMY ZARZĄDZANIA INFORMACJĄ Wykład 4 Katedra Inżynierii Komputerowej Jakub Romanowski jakub.romanowski@kik.pcz.pl Operacje na tabelach C/AL Poniższe funkcje odpowiadają za operacje modyfikacji
Wykład 5. SQL praca z tabelami 2
Wykład 5 SQL praca z tabelami 2 Wypełnianie tabel danymi Tabele można wypełniać poprzez standardową instrukcję INSERT INTO: INSERT [INTO] nazwa_tabeli [(kolumna1, kolumna2,, kolumnan)] VALUES (wartosc1,
Język SQL. Rozdział 9. Język definiowania danych DDL, część 2.
Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. Ograniczenia integralnościowe, modyfikowanie struktury relacji, zarządzanie ograniczeniami. 1 Ograniczenia integralnościowe Służą do weryfikacji
Procedury i funkcje składowane
Procedury i funkcje składowane Zmienne podstawienia i zmienne wiązane, podprogramy, procedury składowane, typy argumentów, wywoływanie procedur, funkcje składowane, poziomy czystości funkcji, funkcje tablicowe
Procedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1
Procedury wyzwalane procedury wyzwalane, cel stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie wyzwalaczami 1 Procedury wyzwalane
Kursory i wyjątki. (c) Instytut Informatyki Politechniki Poznańskiej 1
Kursory i wyjątki Kursory i praca z kursorami, kursory jawne i niejawne, otwieranie kursora, pobieranie z kursora, zamykanie kursora, wyjątki systemowe i użytkownika, zgłaszanie i obsługa wyjątków 1 Kursor
Metody getter https://www.python-course.eu/python3_object_oriented_programming.php 0_class http://interactivepython.org/runestone/static/pythonds/index.html https://www.cs.auckland.ac.nz/compsci105s1c/lectures/
Algorytmy i struktury danych
Algorytmy i struktury danych Proste algorytmy sortowania Witold Marańda maranda@dmcs.p.lodz.pl 1 Pojęcie sortowania Sortowaniem nazywa się proces ustawiania zbioru obiektów w określonym porządku Sortowanie
PAKIETY STATYSTYCZNE
1. Wykład wstępny PAKIETY STATYSTYCZNE 2. SAS, wprowadzenie - środowisko Windows, Linux 3. SAS, elementy analizy danych edycja danych 4. SAS, elementy analizy danych regresja liniowa, regresja nieliniowa
Kompletna dokumentacja kontenera C++ vector w - http://www.cplusplus.com/reference/stl/vector/
STL, czyli o co tyle hałasu W świecie programowania C++, hasło STL pojawia się nieustannie i zawsze jest o nim głośno... często początkujące osoby, które nie znają STL-a pytają się co to jest i czemu go
Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w
Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w obrębie skryptu. Wyrażenia include() i require() są niemal
Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.
Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Celem ćwiczeń jest poznanie zasad tworzenia baz danych i zastosowania komend SQL. Ćwiczenie I. Logowanie
Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)
Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa dwunasty PL/SQL, c.d. 1 / 37 SQL to za mało SQL brakuje możliwości dostępnych w językach proceduralnych.
Typy metod: konstruktory, destruktory, selektory, zapytania, iteratory.
Typy metod: konstruktory, destruktory, selektory, zapytania, iteratory. Konstruktory Konstruktory w językach obiektowych są to specjalne metody wywoływane podczas tworzenia nowego obiektu i służące do
Obowiązuje od wersji
Obowiązuje od wersji 8.30.0 1. Wstęp czym są gniazda rozszerzeń?... 2 2. Edytor gniazd rozszerzeń - informacje podstawowe... 3 3. Dostępne rodzaje funkcji w gniazdach rozszerzeń... 6 3.1 Procedura SQL...
Ćwiczenia 2 IBM DB2 Data Studio
Ćwiczenia 2 IBM DB2 Data Studio Temat: Aplikacje w Data Studio 1. Projekty Tworzenie procedur, UDF, trygerów zaczynamy od utworzenia projektu File -> New -> Project wybieramy Data Development Project.
Podstawy języka SQL. SQL Structured Query Languagestrukturalny
Podstawy języka SQL SQL Structured Query Languagestrukturalny język zapytań DDL Język definicji danych (np. tworzenie tabel) DML Język manipulacji danych (np. tworzenie zapytań) DCL Język kontroli danych
Bazy danych 6. Klucze obce. P. F. Góra
Bazy danych 6. Klucze obce P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2018 Dygresja: Metody przechowywania tabel w MySQL Tabele w MySQL moga być przechowywane na kilka sposobów. Sposób ten (żargonowo:
Podstawy programowania. Podstawy C# Tablice
Podstawy programowania Podstawy C# Tablice Tablica to indeksowany zbiór elementów Tablica jest typem referencyjnym (deklaracja tworzy tylko referencję, sama tablica musi być utworzona oddzielnie, najprościej
Wykład 4. Tablice. Pliki
Informatyka I Wykład 4. Tablice. Pliki Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Tablice Tablica uporządkowany zbiór elementów określonego typu Każdy element tablicy posiada
Wstęp do programowania
Wieczorowe Studia Licencjackie Wrocław, 9.01.2007 Wstęp do programowania Wykład nr 13 Listy usuwanie elementów Poniżej prezentujemy funkcję, która usuwa element o podanej wartości pola wiek z nieuporządkowanej
Programowanie i struktury danych
Programowanie i struktury danych 1 / 30 STL Standard Template Library, STL (ang. = Standardowa Biblioteka Wzorców) biblioteka C++ zawierająca szablony (wzorce), które umożliwiają wielokrotne użycie. Główne
Zapytania, złączenia, optymalizacja zapytań, planowanie zapytań, optymalizacja indeksów.
Dr inŝ. Dziwiński Piotr Katedra InŜynierii Komputerowej Zapytania, złączenia, optymalizacja zapytań, planowanie zapytań, optymalizacja indeksów. Kontakt: piotr.dziwinski@kik.pcz.pl 2 SQLQuery4_1.sql 3
Pakiety podprogramów Dynamiczny SQL
Pakiety podprogramów Dynamiczny SQL Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora), dynamiczny SQL 1 Pakiety Pakiet (ang. package)
PL/SQL. Zaawansowane tematy PL/SQL
PL/SQL Zaawansowane tematy PL/SQL Cele Poznanie złożonych i referencyjnych typów danych Poznanie konstrukcji kursora Poznanie kodu składowanego Poznanie procedur i funkcji 2 Złożone typy danych RECORD
Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy Wykład 3, część 3 1 Język JAVA podstawy Plan wykładu: 1. Konstrukcja kodu programów w Javie 2. Identyfikatory, zmienne 3. Typy danych 4. Operatory, instrukcje sterujące instrukcja warunkowe,
Bash - wprowadzenie. Bash - wprowadzenie 1/39
Bash - wprowadzenie Bash - wprowadzenie 1/39 Bash - wprowadzenie 2/39 Czym jest bash? Rysunek : Zadanie powłoki to ukrycie wywołań systemowych Bash - wprowadzenie 3/39 Czym jest bash? Przykład polecenia:
KURS C/C++ WYKŁAD 6. Wskaźniki
Wskaźniki KURS C/C++ WYKŁAD 6 Każda zmienna ma unikalny adres wskazujący początkowy obszar pamięci zajmowany przez tą zmienną. Ilość pamięci zajmowanej przez zmienną zależy od typu zmiennej. Adres można
Porządek symetryczny: right(x)
Porządek symetryczny: x lef t(x) right(x) Własność drzewa BST: W drzewach BST mamy porządek symetryczny. Dla każdego węzła x spełniony jest warunek: jeżeli węzeł y leży w lewym poddrzewie x, to key(y)
Podstawy otwartych języków programowania Przechowywanie danych
Podstawy otwartych języków programowania Przechowywanie danych Wiktor Wandachowicz Sposoby przechowywania danych Typy podstawowe Pojedyncze obiekty Tablice obiektów i tablice typów podstawowych jednowymiarowe
Wyszukiwanie w BST Minimalny i maksymalny klucz. Wyszukiwanie w BST Minimalny klucz. Wyszukiwanie w BST - minimalny klucz Wersja rekurencyjna
Podstawy Programowania 2 Drzewa bst - część druga Arkadiusz Chrobot Zakład Informatyki 12 maja 2016 1 / 8 Plan Wstęp Wyszukiwanie w BST Minimalny i maksymalny klucz Wskazany klucz Zmiany w funkcji main()
Programowanie w języku Java. Kolekcje
Programowanie w języku Java Kolekcje Definicja Kolekcja to obiekt, który grupuje elementy danych (inne obiekty) i pozwala traktować je jak jeden zestaw danych, umożliwiając jednocześnie wykonywanie na
SQL SERVER 2012 i nie tylko:
SQL SERVER 2012 i nie tylko: Wstęp do planów zapytań Cezary Ołtuszyk coltuszyk.wordpress.com Kilka słów o mnie Starszy Administrator Baz Danych w firmie BEST S.A. (Bazy danych > 1TB) Konsultant z zakresu
Algorytmy i struktury danych. Wykład 4 Tablice nieporządkowane i uporządkowane
Algorytmy i struktury danych Wykład 4 Tablice nieporządkowane i uporządkowane Tablice uporządkowane Szukanie binarne Szukanie interpolacyjne Tablice uporządkowane Szukanie binarne O(log N) Szukanie interpolacyjne
2006-03-07 Wykład. Wprowadzenie do systemu SAS (import i transformacje danych)
Metody statytystyczne w naukach biologicznych 1 Wykład. Wprowadzenie do systemu SAS (import i transformacje danych) SAS System Analiz Statystycznych SAS jest systemem służącym dostarczaniu informacji potrzebnej
Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 6 Wprowadzenie Definiowanie wyzwalaczy DML Metadane wyzwalaczy Inne zagadnienia, tabele mutujące Wyzwalacze INSTEAD OF Wyzwalacze
Tablice cz. I Tablice jednowymiarowe, proste operacje na tablicach
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Tablice cz. I Tablice jednowymiarowe, proste operacje na tablicach Tablice Powiedzmy, że chcemy zapamiętać w programie
Bibliotek grid została stworzona aby wykorzystywać funkcje programu R ( oraz wprowadzone do programu R) do tworzenia odwzorowań typu grid oraz siatek
Paulina Lewińska Bibliotek grid została stworzona aby wykorzystywać funkcje programu R ( oraz wprowadzone do programu R) do tworzenia odwzorowań typu grid oraz siatek punktów. Dodatkowo pozwala ona użytkownikom
Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta 16.09.2006. Strona 1 z 26. Powrót. Full Screen. Zamknij.
Programowanie Sobera Jolanta 16.09.2006 Strona 1 z 26 1 Wprowadzenie do programowania 4 2 Pierwsza aplikacja 5 3 Typy danych 6 4 Operatory 9 Strona 2 z 26 5 Instrukcje sterujące 12 6 Podprogramy 15 7 Tablice
Dawid Gierszewski Adam Hanasko
Dawid Gierszewski Adam Hanasko Chcemy stworzyć klasę w której możemy przechowywać dwie zmienne dowolnych typów Tworzymy tyle różnych klas ile potrzeba: Class ParaInt{ int pierwszy; Int drugi; Class ParaButow{
Podstawy Programowania C++
Wykład 3 - podstawowe konstrukcje Instytut Automatyki i Robotyki Warszawa, 2014 Wstęp Plan wykładu Struktura programu, instrukcja przypisania, podstawowe typy danych, zapis i odczyt danych, wyrażenia:
w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze
w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze Cechy bloków nazwanych: w postaci skompilowanej trwale przechowywane na serwerze wraz z danymi wykonywane na żądanie użytkownika lub w
PARADYGMATY PROGRAMOWANIA Wykład 4
PARADYGMATY PROGRAMOWANIA Wykład 4 Metody wirtualne i polimorfizm Metoda wirualna - metoda używana w identyczny sposób w całej hierarchii klas. Wybór funkcji, którą należy wykonać po wywołaniu metody wirtualnej