E.14 Bazy Danych cz. 12 SQL Wybrane funkcje serwera MySQL
|
|
- Stanisława Lisowska
- 5 lat temu
- Przeglądów:
Transkrypt
1 Wprowadzenie Funkcje tekstowe Funkcje liczbowe Funkcje daty i czasu Funkcje konwersji Funkcje serwera MySQL Na podstawie: webmaster.helion.pl oraz: ihelp.ovh.org Tak jak we wszystkich innych językach programowania, w języku SQL funkcje stanowią potężne narzędzie w pracy programisty zamiast samodzielnie pisać skomplikowane programy, wystarczy wywołać odpowiednią funkcję. W tym odcinku nauczysz się wywoływać funkcje systemowe i poznasz niektóre funkcje serwera MySQL. Wprowadzenie Wbudowane funkcje serwerów baz danych można podzielić na trzy kategorie: 1. Funkcje skalarne zwracają pojedynczą wartość obliczoną na podstawie zera lub większej liczby prostych argumentów. 2. Funkcje grupujące zwracają pojedynczą wartość dla zbioru argumentów wywołania. 3. Funkcje typu RowSet zwracające dane w postaci tabelarycznej, do których odwołujemy się tak jak do tabel. Na podstawie typu parametrów wywołania funkcje skalarne można podzielić na: 1. Funkcje tekstowe operujące na ciągach znaków. 2. Funkcje liczbowe operujące na liczbach. 3. Funkcje daty i czasu operujące na danych typu data i godzina. 4. Funkcje konwersji służące do zmiany typu danych. 5. Na specjalne wyróżnienie zasługują funkcje kryptologiczne, które pozwalają zaszyfrować, odszyfrować i podpisać wiadomość oraz sprawdzić jej autentyczność. W języku SQL funkcje można zagnieżdżać do dowolnego poziomu. Funkcje najbardziej wewnętrzne obliczane są w pierwszej kolejności, a na podstawie ich wyników obliczane są funkcje zewnętrzne. Funkcje tekstowe Argumentem funkcji tekstowych są ciągi znaków (dane typów char, varchar lub text). Typ danych zwracanych przez funkcje tekstowe jest podstawą do ich dalszego podziału: wyróżniamy funkcje tekstowe zwracające wartość znakową i funkcje tekstowe zwracające liczbę. 1
2 Funkcje tekstowe zwracające tekst CONCAT() Funkcja łączy (konkatenuje) przekazane jako parametr i oddzielone przecinkami ciągi znaków. Używaliśmy już tej funkcji, a w następnych listingach użyjemy jej jeszcze kilka razy. CONCAT_WS() Funkcja łączy (konkatenuje) przekazane jako parametr i oddzielone przecinkami ciągi znaków, rozdzielając je przekazanym jako pierwszy parametr ciągiem znaków. LOWER() Wynikiem działania funkcji LOWER() jest ciąg znaków podany jako argument, ale składający się wyłącznie z małych liter. Za pomocą tej funkcji wszystkie wielkie litery argumentu zostaną zamienione na małe. Aby na przykład wyświetlić nazwiska wszystkich współpracowników za pomocą małych liter, napiszemy (listing 12.1): Listing Funkcji skalarnych można używać m.in. w klauzulach SELECT, WHERE i ORDER BY SELECT title, LOWER(title) FROM customer WHERE customer_id<3; title lower(title) Miss miss Mr mr UPPER() Wynikiem działania funkcji UPPER() jest ciąg znaków podany jako argument, ale składający się wyłącznie z wielkich liter. Za pomocą tej funkcji wszystkie małe litery argumentu zostaną zamienione na wielkie. Aby na przykład uszeregować nazwy wszystkich towarów alfabetycznie według ich nazw, bez względu na wielkość użytych w nazwie liter, napiszemy (listing 12.2): Listing Poszczególne klauzule instrukcji są od siebie niezależne dane mogą być na przykład sortowane według wyrażenia niewymienionego w klauzuli SELECT SELECT * FROM item ORDER BY UPPER(description); item_id description cost_price sell_price Carrier Bag Fan Large
3 6 Fan Small Linux CD Picture Frame Roman Coin Rubik Cube Speakers SQL Server 2005 NULL NULL 4 Tissues Toothbrush Wood Puzzle LEFT() Za pomocą funkcji LEFT() z podanego jako argument ciągu znaków zostanie wycięta określona liczba znaków, począwszy od lewej strony. Aby odczytać inicjały klientów, wykonamy instrukcję pokazaną na listingu Listing Przykład zagnieżdżania funkcji najpierw odczytywane są pierwsza litera imienia i nazwiska, a następnie są one łączone w jeden ciąg SELECT CONCAT(LEFT(fname,1), LEFT(lname,1)) FROM customer; CONCAT(LEFT(fname,1), LEFT(lname,1)) JS AS AM AM SC NM RS AS CH MH DJ RN LH BN DH NULL RIGHT() Za pomocą funkcji RIGHT() z podanego jako argument ciągu znaków zostanie wycięta określona liczba znaków, począwszy od prawej strony (listing 12.4). 3
4 Listing Wyświetlamy dane wyłącznie tych osób, których imiona kończą się na litery rd SELECT title, lname, fname FROM customer WHERE RIGHT(fname,2) = 'rd'; title lname fname Mr Stones Richard Mr Neill Richard TRIM(), LTRIM() i RTRIM() Funkcja LTRIM() z podanego ciągu znaków usuwa wiodące spacje, funkcja RTIM() usuwa kończące (wolne) spacje, a funkcja TRIM() zarówno wiodące, jak i wolne spacje (listing 12.5). Listing Przed zapisaniem danych do bazy z reguły warto usunąć z nich przypadkowo dodane spacje SELECT ltrim(' barba dos '; ltrim(' barba dos ') barba dos SELECT rtrim(' barba dos '); rtrim(' barba dos ') barba dos SELECT trim(' barba dos '); trim(' barba dos ') barba dos REPLACE() Za pomocą funkcji REPLACE() w ciągu znaków podanym jako pierwszy parametr zostanie wyszukany ciąg podany jako jej drugi parametr, a następnie w miejsce znalezionego ciągu będzie podstawiony ciąg podany jako trzeci parametr wywołania. Jeżeli trzeci parametr nie zostanie podany, z ciągu podstawowego będzie wycięty wyszukany ciąg znaków (listing 12.6). 4
5 Listing Funkcja REPLACE jest niezastąpiona na przykład przy przygotowywaniu kolejnej wersji tego samego zestawienia SELECT REPLACE('Kierownik niech nam żyje', ' żyje', 'zgnije'); REPLACE('Kierownik niech nam żyje', ' żyje', 'zgnije') Kierownik niech nam zgnije SUBSTRING() W wyniku działania funkcji SUBSTRING() zostanie zwrócona określona liczba znaków z łańcucha tekstowego, począwszy od podanej pozycji. Jeżeli nie podamy liczby zwracanych znaków, zwrócone będą wszystkie znaki występujące po pozycji określonej przez drugi parametr. Podanie ujemnej wartości drugiego parametru spowoduje, że znaki będą liczone od prawej do lewej (listing 12.7). Listing Siedem liter, począwszy od piątej, z nazw produktów SELECT SUBSTRING(description,5,7) FROM item; SUBSTRING(description,5,7) Puzzle k Cube x CD ues ure Fra Small Large hbrush n Coin ier Bag kers Server SPACE() Działanie funkcji SPACE() powoduje zwrócenie liczby spacji określonej jako parametr (listing 12.8). Listing Zamiast ręcznie dodawać spacje, możemy użyć do tego funkcji SPACE() SELECT CONCAT(fname, SPACE(3), lname) FROM customer; 5
6 CONCAT(fname, SPACE(3), lname) Jenny Stones Andrew Stones Alex Matthew Adrian Matthew Simon Cozens Neil Matthew Richard Stones Ann Stones Christine Hickman Mike Howard Dave Jones Richard Neill Laura Hendy Bill Neill David Hudson NULL REVERSE() Funkcja REVERSE() zwraca ciąg znaków będący palindromem argumentu wywołania, czyli ciągiem znaków o odwróconej kolejności liter (listing 12.9). Listing Zapytanie zwracające imiona będące palindromami SELECT fname from customer WHERE REVERSE(fname) = fname; fname Anna Funkcje tekstowe zwracające liczby LENGTH() Funkcja LENGTH() jako wynik zwraca długość ciągu znaków podanego jako parametr jej wywołania. Jeżeli wywołamy funkcję LENGTH() z wartością Null, funkcja zwróci wartość Null. Za pomocą poniższej instrukcji wyświetlimy tylko te opisy towarów, które mają długie (dłuższe niż 10-znakowe) nazwy (listing 12.10). Listing Funkcja LENGTH() użyta do selekcji wierszy SELECT description, LENGTH(description) 6
7 FROM item WHERE LENGTH(description)>10; description LENGTH(description) Wood Puzzle 11 Picture Frame 13 Carrier Bag 11 SQL Server INSTR() W wyniku działania funkcji INSTR() będzie zwrócona pozycja, na której w ciągu znaków podanym jako pierwszy parametr został znaleziony ciąg znaków podany jako drugi parametr. Jeżeli szukany ciąg znaków nie będzie znaleziony, funkcja zwróci 0 (listing 12.11). Listing Wykorzystanie funkcji INSTR() do wybrania produktów, które w nazwie mają literę a SELECT description FROM item WHERE INSTR(description, 'a')>0; description Picture Frame Fan Small Fan Large Roman Coin Carrier Bag Speakers Funkcje liczbowe Funkcje liczbowe pozwalają wykonywać dodatkowe (oprócz dodawania, odejmowania czy mnożenia) operacje matematyczne oraz formatować liczby. ROUND() Działanie funkcji ROUND() polega na zaokrągleniu liczby do określonej liczby cyfr po przecinku. Pierwszy parametr jest liczbą do zaokrąglenia, drugi wskazuje, do ilu pozycji chcemy ją zaokrąglić. Ujemna wartość powoduje zaokrąglenie liczby z lewej strony przecinka; 0 spowoduje zaokrąglenie do najbliższej liczby całkowitej. Jeżeli drugi parametr nie jest podany, serwer baz danych przyjmuje domyślnie jego wartość jako równą 0 (listing 12.12). Listing Przykład użycia funkcji ROUND() 7
8 SELECT Round( ,4); Round( ,4) SELECT Round( ,0); Round( ,0) 3 SELECT Round( ); Round( ) TRUNCATE() Funkcja TRUNCATE() powoduje obcięcie liczby do określonej liczby cyfr po przecinku. Pierwszy parametr jest liczbą do obcięcia, drugi wskazuje, do ilu pozycji chcemy liczbę skrócić. Ujemna wartość powoduje dodanie określonej liczby zer z lewej strony przecinka. Jeżeli drugi parametr nie jest podany, MySQL przyjmuje domyślnie jego wartość jako równą 0 (listing 12.13). Listing Obcięcie miejsc po przecinku i zaokrąglenie do iluś miejsc po przecinku to dwie operacje SELECT Truncate( ,4); Truncate( ,4) ABS() Wynikiem działania funkcji ABS() jest wartość bezwzględna liczby (liczba bez znaku). Jako parametr podaje się liczbę, której wartość bezwzględną należy obliczyć (listing 12.14). Listing Funkcja ABS() użyta do sprawdzenia, czy dana liczba jest dodatnia SELECT * FROM item 8
9 WHERE sell_price!= ABS(sell_price); Empty set CEILING(), FLOOR() Za pomocą funkcji CEILING() zwrócona zostanie najmniejsza liczba całkowita równa liczbie podanej jako argument funkcji lub większa. Funkcja FLOOR() zwraca największą liczbę całkowitą równą liczbie podanej jako argument funkcji lub mniejszą (listing 12.15). Listing Zwróć uwagę na wynik wywołania funkcji z argumentem Null SELECT sell_price, CEILING(sell_price), FLOOR(sell_price) FROM item; sell_price CEILING(sell_price) FLOOR(sell_price) NULL NULL NULL POWER(), POW() Funkcja POWER() sprawia, że liczba podana jako pierwszy parametr zostanie podniesiona do potęgi podanej jako drugi parametr. Wartości drugiego parametru mogą być mniejsze niż zero (listing 12.16). Listing Często tę samą funkcję możemy wywołać za pomocą kilku nazw SELECT POWER(10,2), POW(2,10); POWER(10,2) POW(2,10)
10 SQRT() W wyniku działania funkcji SQRT() zwrócony będzie pierwiastek kwadratowy z liczby podanej jako parametr wywołania (listing 12.17). Listing Przykład użycia funkcji SQRT() SELECT SQRT(10), SQRT(16); SQRT(10) SQRT(16) MOD() Funkcja MOD() zwraca jako wynik wartość reszty po podzieleniu liczby podanej jako pierwszy parametr przez dzielnik podany jako drugi parametr wywołania funkcji. Jeżeli wartość drugiego parametru wynosi 0, zwracana jest liczba podana jako pierwszy parametr (listing 12.18). Listing Zapytanie zwracające dane towarów o parzystych identyfikatorach SELECT * FROM item WHERE MOD(item_id,2)=0; item_id description cost_price sell_price Rubik Cube Tissues Fan Small Toothbrush Carrier Bag SQL Server 2005 NULL NULL Funkcje trygonometryczne SIN(), COS(), TAN() i COT() W wyniku działania funkcji SIN() (sinus), COS() (cosinus), TAN() (tangens) i COT() (cotangens) zwrócona zostanie wartość odpowiednich funkcji trygonometrycznych dla parametru będącego kątem w radianach będzie obliczony odpowiednio: sinus, cosinus, tangens lub cotangens. Aby przeliczyć kąty z radianów na stopnie, należy posłużyć się wzorem: stopnie PI()/180 = radiany (listing 12.19). Listing Przykład użycia funkcji trygonometrycznych SELECT SIN(200), COS(200), COT(200); 10
11 SIN(200) COS(200) COT(200) RAND() Funkcja RAND() zwraca pseudolosową liczbę z przedziału od 0 do 1. Serwer MySQL oblicza tę wartość dla każdego wiersza wyniku (listing 12.20), co pozwala użyć funkcji RAND() do losowego wybierania danych z tabeli (listing 12.21). Listing MySQL w przeciwieństwie do niektórych serwerów baz danych wylicza wartości funkcji RAND() dla każdego wiersza wyniku SELECT RAND(), description FROM item; RAND() description Wood Puzzle Rubik Cube Linux CD Tissues Picture Frame Fan Small Fan Large Toothbrush Roman Coin Carrier Bag Speakers SQL Server Listing Każde wywołanie tej instrukcji zwróci informację o innym, losowo wybranym towarze SELECT * FROM item ORDER BY RAND() LIMIT 1; item_id description cost_price sell_price Roman Coin
12 SIGN() Funkcja SIGN() zwraca 1, jeżeli argumentem jej wywołania była liczba większa od 0, lub 0, jeżeli argumentem jej wywołania było 0, albo 1, jeżeli została wywołana dla liczby mniejszej od zera. W listingu użyto jej do wyróżniania informacji o tym, czy cena sprzedaży towaru była wyższa od ceny jego zakupu. Listing Funkcja SIGN() wywołana dla wyniku odjęcia wartości dwóch kolumn SELECT description,sign(sell_price-cost_price) FROM test.item; description SIGN(sell_price-cost_price) Wood Puzzle 1 Rubik Cube 1 Linux CD 1 Tissues 1 Picture Frame 1 Fan Small 1 Fan Large 1 Toothbrush 1 Roman Coin 1 Carrier Bag -1 Speakers 1 SQL Server 2005 NULL FORMAT() Funkcja FORMAT() zwraca przekazaną jako pierwszy argument wywołania liczbę z określoną przez drugi parametr liczbą miejsc po przecinku (listing 12.23). Listing Formatowanie liczb polega na określaniu miejsc po przecinku SELECT cost_price, FORMAT(cost_price,1), FORMAT(cost_price,3) FROM test.item i; cost_price FORMAT(cost_price,1) FORMAT(cost_price,3)
13 NULL NULL NULL Funkcje daty i czasu Kolejna często używana grupa funkcji to funkcje operujące na argumentach będących zapisem daty lub czasu. W prawie każdej bazie danych część przechowywanych w niej informacji musi mieć jakiś znacznik czasu atrybut pozwalający na sprawdzenie, kiedy rekord został dodany lub zmodyfikowany. Informacje takie jak dane o poszczególnych transakcjach finansowych stają się bezwartościowe po wyeliminowaniu dat tych operacji. Dlatego MySQL posiada predefiniowane funkcje pozwalające wykonywać podstawowe operacje na danych tego typu. CURDATE(), CURTIME() Wynikiem działania funkcji CURDATE() jest bieżąca data, a funkcji CURTIME() bieżący czas. Częstym zastosowaniem funkcji jest automatyczne wstawianie informacji o czasie utworzenia lub zmodyfikowania danych (listing 12.24). Listing Odczytanie bieżącej daty i czasu systemowego SELECT CURDATE(),CURTIME(); CURDATE() CURTIME() :33: NOW() Funkcja NOW() zwraca zarówno datę, jak i czas systemowy (listing 12.25). Listing Przykład wywołania funkcji NOW(). Należy zwrócić uwagę, że nawet jeżeli funkcja wywoływana jest bez parametrów, trzeba użyć nawiasów SELECT NOW(); NOW() :37:
14 DAYOFMONTH(), DAYOFWEEK(), DAYOFYEAR() Funkcje DAYOFMONTH(), DAYOFWEEK(), DAYOFYEAR() zwracają numer dnia odpowiednio: miesiąca (liczba z zakresu od 1 do 31), tygodnia (liczba z zakresu od 1 do 7, gdzie 1 oznacza niedzielę pierwszy dzień tygodnia, a 7 sobotę siódmy dzień tygodnia) i roku (liczba z zakresu od 1 do 365) (listing 12.26). Listing Lista zamówień złożonych w piątek SELECT * FROM orderinfo WHERE DAYOFWEEK(date_placed) = 6; orderinfo_id customer_id date_placed date_shipped shipping DAY(), MONTH(), YEAR() Funkcje DAY(), MONTH(), YEAR() zwracają odpowiednio dzień, miesiąc i rok z daty przekazanej jako parametr wywołania (listing 12.27). Listing Informacja o dacie zamówień rozbita na dni, miesiące i lata SELECT date_placed, DAY(date_placed), MONTH (date_placed), YEAR(date_placed) FROM orderinfo; date_placed DAY(date_placed) MONTH (date_placed) YEAR(date_placed) HOUR(), MINUTE(), SECOND() Funkcje HOUR(), MINUTE(), SECOND() zwracają odpowiednio godziny, minuty i sekundy z czasu przekazanego jako parametr wywołania (listing 12.28). Listing Informacja o bieżącym czasie rozbita na godziny, minuty i sekundy SELECT HOUR(CURTIME()), MINUTE(CURTIME()), SECOND(CURTIME()); 14
15 HOUR(CURTIME()) MINUTE(CURTIME()) SECOND(CURTIME()) DAYNAME(), MONTHNAME() Funkcje DAYNAME(), MONTHNAME() zwracają nazwę dnia tygodnia i miesiąca daty będącej argumentem wywołania (listing 12.29). Listing Opisowo przedstawione dni tygodnia i nazwy miesięcy SELECT date_placed, DAYNAME(date_placed), MONTHNAME(date_placed) FROM orderinfo; date_placed DAYNAME(date_placed) MONTHNAME(date_placed) Monday March Friday June Saturday September Sunday September Friday July DATE_ADD() Działanie funkcji DATE_ADD() powoduje obliczenie wyniku zmiany daty (podanej jako pierwszy parametr) o ilość jednostek czasu określoną przez drugi parametr (listing 12.30). Listing Terminy zrealizowania zamówień zostały przesunięte o trzy dni SELECT date_shipped, DATE_ADD(date_shipped, INTERVAL 3 DAY) FROM orderinfo; date_shipped DATE_ADD(date_shipped, INTERVAL 3 DAY)
16 DATEDIFF() Wynikiem działania funkcji DATEDIFF() jest liczba dni, które dzielą daty podane jako parametry funkcji. Aby sprawdzić, ile dni upłynęło pomiędzy złożeniem i zrealizowaniem zamówienia, napiszemy (listing 12.31): Listing Aliasy zdefiniowane w klauzuli SELECT nie mogą być użyte w innych klauzulach. Zamiast tego musimy powtórzyć całe wyrażenie SELECT orderinfo_id, DATEDIFF(date_shipped, date_placed) AS 'czas realizacji' FROM orderinfo ORDER BY DATEDIFF(date_shipped, date_placed); orderinfo_id czas realizacji DATE_FORMAT(), TIME_FORMAT() Funkcja DATE_FORMAT() pozwala formatować dane daty i czasu, funkcja TIME_FORMAT() pozwala formatować wyłącznie informacje o czasie. Pierwszym parametrem obu funkcji jest data lub czas, drugim symbol docelowego formatu (tabela 12.1). Tabela Najczęściej stosowane formaty daty i czasu Format Opis %a Skrócona nazwa dnia tygodnia %b Skrócona nazwa miesiąca %c Jedno- lub dwucyfrowy numer miesiąca %D Kolejny dzień miesiąca z angielskim przedrostkiem %d Jedno- lub dwucyfrowy numer dnia miesiąca %e Dwucyfrowy numer dnia miesiąca %f Liczba milisekund %H Godziny w notacji 24-godzinnej 16
17 %h Godziny w notacji 12-godzinnej %i Minuty %j Dzień roku %M Nazwa miesiąca %m Dwucyfrowy numer miesiąca %p Symbol AM (łac. ante meridiem) lub PM (łac. post meridiem) %r Czas w formacie hh:mm:ss uzupełniony o symbol AM lub PM %S Sekundy %T Czas w formacie hh:mm:ss %U Tydzień (pierwszym dniem tygodnia jest niedziela) %u Tydzień (pierwszym dniem tygodnia jest poniedziałek) %W Nazwa dnia tygodnia %w Dzień tygodnia %Y Czterocyfrowy rok %y Dwucyfrowy rok Listing pokazuje zastosowanie obu funkcji do formatowania danych daty i czasu. Listing Daty zrealizowania zamówień w oryginalnym i polskim formacie uzupełnione o informacje o bieżącym czasie SELECT date_shipped, DATE_FORMAT(date_shipped, '%D%M, %Y'), time_format(curtime(),'%t') FROM orderinfo; date_shipped DATE_FORMAT(date_shipped, '%D%M, %Y') time_format(curtime(),'%t') thMarch, :13: rdJune, :13: thSeptember, :13: thSeptember, :13: thJuly, :13:
18 Funkcje konwersji Piąta wersja serwera MySQL umożliwia definiowanie kolumn lub deklarowanie zmiennych różnych typów: 1. Dane tekstowe (typy char, varchar, text) mogą zawierać tekst lub kombinacje tekstu i liczb, na przykład adres; mogą zawierać również liczby, na których nie są przeprowadzane obliczenia, takie jak numery telefonów, numery katalogowe i kody pocztowe. 2. Dane binarne (typy binary, varbinary, BLOB) mogą zawierać dowolne dane. Mogą to być zarówno długie teksty, jak i grafika czy pliki multimedialne. 3. Dane liczbowe (typy tinyint, smallint, mediumint, int, bigint, decimal, float, double) zawierają dane liczbowe, na których są przeprowadzane obliczenia, przy czym dwa ostatnie typy są zmiennoprzecinkowe, czyli takie dane przechowywane są z określoną dokładnością. 4. Daty (typy datetime, date, timestamp, time i year) przechowują dane dotyczące daty i czasu. 5. Dane logiczne (typy bool, boolean) w MySQL-u są to synonimy typu tinyint, przy czym 0 oznacza fałsz, a 1 prawdę. Prędzej czy później każdy administrator i programista baz danych będzie zmuszony porównać dane różnych typów. Wynik porównania np. imienia Anna z liczbą 712 czy datą jest trudny do przewidzenia. Aby takie porównanie było możliwe, trzeba najpierw przekonwertować porównywane dane. ASCII() W wyniku działania funkcji ASCII() będzie zwrócony kod ASCII znaku podanego jako parametr wywołania. Jeżeli jako parametr podamy ciąg znaków, za pomocą tej funkcji zostanie obliczony i zwrócony kod ASCII pierwszego znaku w ciągu (listing 12.33). Listing Konwersja znaków na liczby SELECT ASCII(lname), lname FROM customer; ASCII(lname) lname Stones 83 Stones 77 Matthew 77 Matthew 67 Cozens 77 Matthew 83 Stones 83 Stones 72 Hickman 18
19 72 Howard 74 Jones 78 Neill 72 Hendy 78 Neill 72 Hudson 87 Wolski CHR() Działanie funkcji CHR() jest przeciwieństwem działania funkcji ASCII() zamiast zamiany tekstu na liczbę przeprowadza konwersję liczby na odpowiadające jej znaki kodu ASCII (listing 12.34). Listing Funkcję CHR() często stosuje się w celu oszukania prostych zabezpieczeń przed iniekcją kodu SELECT CHAR(77,121,83,81,'76'); CHAR(77,121,83,81,'76') MySQL BIN() Funkcja BIN() zwraca binarną reprezentację podanej liczby dziesiętnej (listing 12.35). Listing Zmiana podstawy liczb SELECT item_id, BIN(item_id) FROM item; item_id BIN(item_id)
20 CAST() Funkcja CAST() pozwala przekonwertować (rzutować) dane przekazane jako pierwszy parametr wywołania na typ podany jako drugi parametr funkcji (listing 12.36). Listing CAST() jest najbardziej uniwersalną funkcją konwersji SELECT CAST(' ' AS date); CAST(' ' AS date) Funkcje serwera MySQL Kilka funkcji kryptograficznych dostępnych w serwerze MySQL. ENCODE(), DECODE() Funkcja ENCODE() zwraca szyfrogram podanego ciągu znaków. Do szyfrowania używane jest hasło podane jako drugi parametr wywołania (listing 12.37). Funkcja DECODE() deszyfruje zaszyfrowane funkcją ENCODE() szyfrogramy. Listing Poufne dane lepiej przechowywać w bazie w postaci zaszyfrowanej SELECT ENCODE('Pin do karty VISA GOLD to 3478','h@ssL0'); ENCODE('Pin do karty VISA GOLD to 3478','h@ssL0') ćň5)kâw őu SHA1() Funkcja SHA1() wylicza sygnaturę podanego ciągu znaków (listing 12.38). Listing W niektórych przypadkach trzeba móc potwierdzić autentyczność danych. Najlepiej wykorzystać do tego funkcję mieszania SELECT SHA1(sell_price) FROM item; SHA1(sell_price) d593b090a756bf12bb1b40e50d03db971d90865a e dce4b1be574bb51c5fe 03f82d768c8366b01cc7366f3c2628e0ec9a
21 70d403dc3c9428c27b2da0056c4702e424c928b1 8818c759d88e34a ed00ae1a44121aabd5 3194b173d1f5e493d10d8fe69cdbb6a9ae218c0e 866de6c5b3f c63bd9f5fb67b cf2449e7d1a4a46d0b78eb2caeb99e78a e f4cec72744beca1c8eeb898df5d8 22cf82b68b95049bffb ccc312a460b10 139fb724c5c37892cb113d b67e9a90ff9 NULL PASSWORD() Hasła użytkowników muszą być chronione, a to oznacza, że nigdy nie należy zapisywać ich w bazie w jawnej postaci. Prawie zawsze hasło wykorzystywane jest jedynie do potwierdzenia tożsamości użytkownika, a do tego celu serwer baz danych nie musi odszyfrować hasła, czyli hasła powinny być zapisane nieodwracalnie zaszyfrowane. Wiemy już, że tak działają funkcje mieszania hasła do serwera MySQL też są tak przechowywane, z tym że do ich wyliczenia i późniejszego porównania wykorzystywana jest funkcja PASSWORD() (listing 12.39). Listing Do sprawdzania tożsamości należy używać sygnatur haseł, nie samych haseł SELECT fname, lname FROM customer WHERE PASSWORD (fname) = '*773326F AEE1566F9BEDE2DEE '; fname lname Alex Matthew SELECT PASSWORD ('Jenny'); PASSWORD ('Jenny') *B2D8022EC63D192D46A9C6E8F651C37B4BC163A SELECT fname, lname FROM customer WHERE PASSWORD (fname) = '*B2D8022EC63D192D46A9C6E8F651C37B4BC163A6'; fname lname Jenny Stones
E.14 Bazy Danych cz. 14 SQL Podzapytania
Wprowadzenie Podzapytania niepowiązane Podzapytania jako źródła danych Podzapytania jako zmienne Podzapytania powiązane Podzapytania jako złączenia Podzapytania z operatorem EXISTS Podzapytania zwracające
Bardziej szczegółowoPodobnie jak wywołania funkcji w innych funkcjach, zapytania możemy zagnieżdżać w innych zapytaniach. Podzapytanie musi zostać zapisane w nawiasie.
W tym odcinku poznasz odpowiednik zmiennych i funkcji znanych z proceduralnych języków programowania podzapytania. Dowiesz się, w jaki sposób MySQL wykonuje podzapytania niepowiązane i powiązane, oraz
Bardziej szczegółowoPobieranie danych z pojedynczych tabel. Wprowadzenie
1. Utwórz bazę o nazwie test 2. Zaimportuj strukturę i dane z pliku baza_test.txt 3. Powyższy zbiór poleceo SQL utworzony w bazie tablice i wpiszę ich zawartości wg poniżeszego schematu: Pobieranie danych
Bardziej szczegółowoPobieranie danych z wielu tabel i łączenie wyników zapytań
W tym odcinku nauczysz się odczytywać dane zapisane w różnych tabelach, poznasz różnice pomiędzy złączeniem wewnętrznym a złączeniami zewnętrznymi i dowiesz się, jak przeprowadzać na tabelach operacje
Bardziej szczegółowoWprowadzenie. Tworzenie widoków
Widoki Wprowadzenie...2 Tworzenie widoków...2 Złączenie zewnętrzne w definicji widoków...4 Porządkowanie danych przez widoki...5 Modyfikowanie danych przez widoki...6 Ograniczenie zakresu modyfikowania
Bardziej szczegółowoFunkcje. Rozdział 3a Funkcje wierszowe. Funkcje znakowe (1) Funkcje wierszowe
Funkcje Rozdział 3a Funkcje wierszowe Funkcje wierszowe (funkcje znakowe, funkcje liczbowe, funkcje operujące na datach, funkcje konwersji, funkcje polimorficzne) Przekształcają dane, pobrane przez polecenie
Bardziej szczegółowoLaboratorium Baz Danych. Zapytania SQL (część 3)
Laboratorium Baz Danych Zapytania SQL (część 3) Uwagi: 1. Wszystkie zapytania dotyczą bazy danych zapytania (skrypt baza6.sql) 2. Wszystkie utworzone zapytania umieszczamy w skrypcie, który pokazujemy
Bardziej szczegółowoJęzyk SQL. Rozdział 3. Funkcje wierszowe
Język SQL. Rozdział 3. Funkcje wierszowe Funkcje wierszowe (funkcje znakowe, funkcje liczbowe, funkcje operujące na datach, funkcje konwersji, funkcje polimorficzne). 1 Funkcje Przekształcają dane, pobrane
Bardziej szczegółowoE.14 Bazy Danych cz. 13 SQL Grupowanie danych i funkcje grupujące
Funkcje grupujące Funkcja COUNT() Funkcja SUM() Funkcja AVG() Funkcje MIN() i MAX() Funkcja GROUP_CONCAT() Grupowanie danych Operator ROLLUP Klauzula HAVING Kolejność wykonywania klauzuli zapytań Na podstawie:
Bardziej szczegółowoSpecyfika języka SQL powoduje, że łatwiej jest najpierw wytłumaczyć, jak korzystać z funkcji grupujących, a dopiero później jak grupować dane.
W tym odcinku poznasz funkcje grupujące i dwie nowe klauzule instrukcji SELECT GROUP BY i HAVING. Nauczysz się też grupować dane, czyli łączyć wiele wierszy w jeden. Grupowanie danych polega na łączeniu
Bardziej szczegółowoE.14 Bazy Danych cz. 17 SQL Widoki
Wprowadzenie Tworzenie widoków Złączenie zewnętrzne w definicji widoków Uporządkowywanie danych poprzez widoki Modyfikowanie danych poprzez widoki Ograniczenie zakresu modyfikowania danych poprzez widoki
Bardziej szczegółowoa) Polecenie: Wyświetl wszystkie rekordy z tabeli Pracownicy (wszystkie atrybuty)
Ćwiczenia MS Access/SQL I. Zadania podstawowe 1. Wyświetlanie zawartości tabeli a) Polecenie: Wyświetl wszystkie rekordy z tabeli Pracownicy (wszystkie atrybuty). ; b) Polecenie: Wyświetl dane (wszystkie
Bardziej szczegółowoBazy danych 6. SQL funkcje daty i czasu, zmienne tymczasowe, aliasy
Bazy danych 6. SQL funkcje daty i czasu, zmienne tymczasowe, aliasy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2007/08 MySQL i programowanie wsadowe C:\wyklady\bazy> mysql < nazwa pliku
Bardziej szczegółowoŚciągawka z funkcji i właściwości systemowych VBA. Opis działania i parametrów. Nazwa funkcji. Składnia zwracanej wartości
Ściągawka z funkcji i właściwości systemowych VBA. Nazwa funkcji Składnia Typ zwracanej wartości Opis działania i parametrów Funkcje konwersji CBool CBool(arg) Boolean arg powinno być wartością numeryczną
Bardziej szczegółowoAdministracja 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 3 Podstawy programowania w T-SQL Zmienne i operatory Instrukcje sterujące Komunikaty Format daty
Bardziej szczegółowoE.14 Bazy Danych cz. 18 SQL Funkcje, procedury składowane i wyzwalacze
Funkcje użytkownika Tworzenie funkcji Usuwanie funkcji Procedury składowane Tworzenie procedur składowanych Usuwanie procedur składowanych Wyzwalacze Wyzwalacze a ograniczenia i procedury składowane Tworzenie
Bardziej szczegółowoE.14 Bazy Danych cz. 10 SQL Pobieranie danych z pojedynczych tabel
Tabele jako zbiory danych Standardy SQL i historia ich powstania Składnia języka SQL Pobieranie danych Odczytujemy wszystkie dane z tabeli Wybieramy kolumny z tabeli Wyrażenia Aliasy Literały Łączenie
Bardziej szczegółowoPL/SQL. Funkcje wbudowane
Slajd 1 PL/SQL Opis funkcji SQL PL/SQL(funkcje SQL) M. Rakowski - WSISiZ 1 Slajd 2 Funkcje wbudowane Funkcje wbudowane mają za zadanie umożliwić bardziej zaawansowane operowanie danymi. Funkcje operacji
Bardziej szczegółowoAby uruchomić program klienta i połączyć się z serwerem, należy komendę:
Bazy danych. Komunikacja z serwerem Aby połączyć się z serwerem i móc wykonywać czynności związane z obsługą baz, potrzebny jest program klienta. Razem z serwerem MySQL dostępny jest działający w wierszu
Bardziej szczegółowoTransakcje W poprzednich częściach instrukcje języka SQL traktowane były jak indywidualne operacje (transakcje)
Zawartość Transakcje...2 Wstawianie danych...4 Weryfikacja danych...4 Wstawianie pojedynczych wierszy...6 Wstawianie wartości Null...8 Wstawianie danych wybranych w zapytaniu... 10 Usuwanie danych... 12
Bardziej szczegółowoPobieranie danych, czyli instrukcja SELECT
Pobieranie danych, czyli instrukcja SELECT Pobieranie danych Informacje przechowywane w bazach danych mogą być pobrane za pomocą instrukcji języka SQL SELECT. Instrukcja SELECT (zapytanie) określa, jakie
Bardziej szczegółowoLaboratorium Bazy danych SQL 2
Klauzula order by występuje jako ostatnia klauzula w poleceniu select, powoduje posortowanie wierszy będących wynikiem zapytania według wartości atrybutu w niej wskazanego. Domyślnie sortowanie jest według
Bardziej szczegółowoWspółczesne systemy baz danych
Współczesne systemy baz danych dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu Zakład Systemów Informatycznych i Mechatronicznych (SIMT) 2018 Język SQL Język SQL (ang. Structured
Bardziej szczegółowoWprowadzania liczb. Aby uniknąć wprowadzania ułamka jako daty, należy poprzedzać ułamki cyfrą 0 (zero); np.: wpisać 0 1/2
Wprowadzania liczb Liczby wpisywane w komórce są wartościami stałymi. W Excel'u liczba może zawierać tylko następujące znaki: 0 1 2 3 4 5 6 7 8 9 + - ( ), / $ %. E e Excel ignoruje znaki plus (+) umieszczone
Bardziej szczegółowoPobieranie danych z pojedynczych tabel
W tym odcinku po raz pierwszy potraktujemy tabele jako zbiory danych. Poznasz język SQL i nauczysz się odczytywać, wybierać i sortować dane zapisane w pojedynczych tabelach. Wprowadzenie Podstawowe obiekty
Bardziej szczegółowoWspółczesne systemy baz danych
Współczesne systemy baz danych dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu Zakład Systemów Informatycznych i Mechatronicznych (SIMT) 2019 Język SQL Język SQL (ang. Structured
Bardziej szczegółowoRef. 7 - Język SQL - polecenia DDL i DML
Ref. 7 - Język SQL - polecenia DDL i DML Wprowadzenie do języka SQL. Polecenia generujące strukturę bazy danych: CREATE, ALTER i DROP. Polecenia: wprowadzające dane do bazy - INSERT, modyfikujące zawartość
Bardziej szczegółowoBazy danych SQL Server 2005
Bazy danych SQL Server 2005 TSQL Michał Kuciapski Typ zadania: Podstawowe zapytania Select Zadanie 1: Wyświetl następujące informacje z bazy: A. 1. Wyświetl informacje o klientach: nazwa firmy, imie, nazwisko,
Bardziej szczegółowoProgramowanie strukturalne. Opis ogólny programu w Turbo Pascalu
Programowanie strukturalne Opis ogólny programu w Turbo Pascalu STRUKTURA PROGRAMU W TURBO PASCALU Program nazwa; } nagłówek programu uses nazwy modułów; } blok deklaracji modułów const } blok deklaracji
Bardziej szczegółowoJęzyk SQL. Rozdział 3. Zaawansowana selekcja danych
Język SQL. Rozdział 3. Zaawansowana selekcja danych Selekcja wg wartości elementów czasowych, ciągów znaków i liczb. Konstrukcja warunkowa. 1 Funkcje Przekształcają dane, pobrane przez polecenie SQL, lub
Bardziej szczegółowoFunkcje. Rozdział 3. Funkcje. Funkcje znakowe (1) Funkcje wierszowe
Funkcje Rozdział 3 Funkcje Funkcje wierszowe (funkcje znakowe, funkcje liczbowe, funkcje operujące na datach, funkcje konwersji, funkcje polimorficzne), funkcje grupowe, podział relacji na grupy, klauzule
Bardziej szczegółowo2 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 2 1 Bazy Danych Instrukcja laboratoryjna Temat: Obsługa bazy danych za pomocą phpmyadmin oraz phppgadmin 2 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie do phpmyadmin oraz phppgadmin
Bardziej szczegółowoProgramowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie
Programowanie MSQL show databases; - pokazanie jakie bazy danych są dostępne na koncie show databases; - wyświetlenie wszystkich baz danych na serwerze create database nazwa; - za nazwa wstawiamy wybraną
Bardziej szczegółowoMySQL. Darmowa baza danych. Æwiczenia praktyczne
IDZ DO PRZYK ADOWY ROZDZIA KATALOG KSI EK ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK CENNIK I INFORMACJE ZAMÓW INFORMACJE ONOWOœCIACH ZAMÓW CENNIK CZYTELNIA SPIS TREœCI KATALOG ONLINE DODAJ DO KOSZYKA FRAGMENTY
Bardziej szczegółowoAutor: dr inż. Katarzyna Rudnik
Bazy danych Wykład 2 MS Access Obiekty programu, Reprezentacja danych w tabeli, Indeksy, Relacje i ich sprzężenia Autor: dr inż. Katarzyna Rudnik Obiekty programu MS ACCESS Obiekty typu Tabela są podstawowe
Bardziej szczegółowoDr Michał Tanaś(http://www.amu.edu.pl/~mtanas)
Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas) Bazy danych podstawowe pojęcia Baza danych jest to zbiór danych zorganizowany zgodnie ze ściśle określonym modelem danych. Model danych to zbiór ścisłych
Bardziej szczegółowo4. Funkcje. Przykłady
4. Funkcje Przykłady 4.1. Napisz funkcję kwadrat, która przyjmuje jeden argument: długość boku kwadratu i zwraca pole jego powierzchni. Używając tej funkcji napisz program, który obliczy pole powierzchni
Bardziej szczegółowoLaboratorium nr 7. Temat: Podstawy języka zapytań SQL (część 1) 1. Wprowadzenie do laboratorium
Laboratorium nr 7 Temat: Podstawy języka zapytań SQL (część 1) Systemy Zarządzania Bazą Danych (SZBD) pozwalają na rozwiązanie wielu problemów związanych ze składowaniem, przeszukiwaniem i przekształcaniem
Bardziej szczegółowoBazy danych 7/15. Andrzej Łachwa, UJ,
Bazy danych Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl www.uj.edu.pl/web/zpgk/materialy 7/15 Tabele pomocnicze Tabele pomocnicze nie są częścią modelu danych, więc nie powinny pojawiać się na etapie
Bardziej szczegółowoMicrosoft Small Basic
Microsoft Small Basic Obiekt Math Szacowany czas trwania lekcji: 1 godzina Obiekt Math Podczas tej lekcji dowiesz się, jak: Używać różnych właściwości obiektu Math. Używać różnych operacji obiektu Math.
Bardziej szczegółowoE.14 Bazy Danych cz. 15 SQL Transakcyjne przetwarzanie danych
Transakcje Przetwarzanie transakcyjne Automatyczne zatwierdzanie transakcji Rozpoczynanie transakcji Zatwierdzanie transakcji Wycofywanie transakcji Punkty zachowania Poziomy izolowania transakcji Blokowanie
Bardziej szczegółowoPrzestrzenne bazy danych Podstawy języka SQL
Przestrzenne bazy danych Podstawy języka SQL Stanisława Porzycka-Strzelczyk porzycka@agh.edu.pl home.agh.edu.pl/~porzycka Konsultacje: wtorek godzina 16-17, p. 350 A (budynek A0) 1 SQL Język SQL (ang.structured
Bardziej szczegółowoInformatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki
Informatyka I Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 1 Plan wykładu
Bardziej szczegółowoopisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje nazwy tabel lub widoków warunek (wybieranie wierszy)
Zapytania SQL. Polecenie SELECT jest używane do pobierania danych z bazy danych (z tabel lub widoków). Struktura polecenia SELECT SELECT FROM WHERE opisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje
Bardziej szczegółowoArytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI
Arytmetyka komputera Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka Opracował: Kamil Kowalski klasa III TI Spis treści 1. Jednostki informacyjne 2. Systemy liczbowe 2.1. System
Bardziej szczegółowoWidoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?
Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz
Bardziej szczegółowoTransakcyjne przetwarzanie danych
Do tej pory jedynie odczytywaliśmy zapisane w bazach informacje. W tym odcinku nauczysz się wstawiać, usuwać i modyfikować dane. Dowiesz się również, czym jest transakcja, blokada i na czym polega transakcyjne
Bardziej szczegółowo2. Język SQL SQL jest językiem deklaratywnym (Charakterystyczną cechą języków
Część II Bazy Danych podstawy SQL 1. Wprowadzenie Ćwiczenia z przedmiotu Bazy Danych" są poświęcone przede wszystkim językowi SQL (ang. Structured Query Language) i jego zastosowaniom. Język SQL jest strukturalnym
Bardziej szczegółowoOBLICZENIA NA DANYCH
OBLICZENIA NA DANYCH WYRAŻENIA W JĘZYKU 4GL 1. stałe numeryczne Liczby używane w wyrażeniach SAS. Możemy je prezentować w zapisie standardowym (np. 5, 6.7, -2.1), w notacji naukowej (np. 2e5(czyli 2*10
Bardziej szczegółowoJęzyk SQL. Rozdział 9. Język definiowania danych DDL, cześć 1. Tworzenie relacji, typy danych, wartości domyślne atrybutów, słownik bazy danych.
Język SQL. Rozdział 9. Język definiowania danych DDL, cześć 1. Tworzenie relacji, typy danych, wartości domyślne atrybutów, słownik bazy danych. 1 polecenie CREATE TABLE CREATE TABLE nazwa_relacji Tworzenie
Bardziej szczegółowoPrzykłady zastosowań funkcji tekstowych w arkuszu kalkulacyjnym
S t r o n a 1 Bożena Ignatowska Przykłady zastosowań funkcji tekstowych w arkuszu kalkulacyjnym Wprowadzenie W artykule zostaną omówione zagadnienia związane z wykorzystaniem funkcji tekstowych w arkuszu
Bardziej szczegółowoBazy danych. Andrzej Łachwa, UJ, /14
Bazy danych Andrzej Łachwa, UJ, 2016 andrzej.lachwa@uj.edu.pl 3/14 Języki SQL, SQL 2 (1992), SQL 3 (1999-2002) https://pl.wikipedia.org/wiki/sql SQLite https://www.sqlite.org/ MySQL https://www.mysql.com/
Bardziej szczegółowoStałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane
Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane Stałe Oprócz zmiennych w programie mamy też stałe, które jak sama nazwa mówi, zachowują swoją wartość przez cały czas działania programu. Można
Bardziej szczegółowoLaboratorium nr 8. Temat: Podstawy języka zapytań SQL (część 2)
Laboratorium nr 8 Temat: Podstawy języka zapytań SQL (część 2) PLAN LABORATORIUM: 1. Sortowanie. 2. Warunek WHERE 3. Eliminacja powtórzeń - DISTINCT. 4. WyraŜenia: BETWEEN...AND, IN, LIKE, IS NULL. 5.
Bardziej szczegółowoProgramowanie 3 - Funkcje, pliki i klasy
Instytut Informatyki Uniwersytetu Śląskiego Laborki funkcja; parametry funkcji; typ zwracany; typ void; funkcje bez parametrów; napis.length() - jako przykład funkcji. Zadania funkcja dodająca dwie liczby;
Bardziej szczegółowoI. Podstawy języka C powtórka
I. Podstawy języka C powtórka Zadanie 1. Utwórz zmienne a = 730 (typu int), b = 106 (typu long long), c = 123.45 (typu double) Wypisz następujące komunikaty: Dane sa liczby: a = 730, b = 106 i c = 123.45.
Bardziej szczegółowoAlgorytmy i struktury danych. Wykład 4
Wykład 4 Różne algorytmy - obliczenia 1. Obliczanie wartości wielomianu 2. Szybkie potęgowanie 3. Algorytm Euklidesa, liczby pierwsze, faktoryzacja liczby naturalnej 2017-11-24 Algorytmy i struktury danych
Bardziej szczegółowo1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
Bardziej szczegółowoSQL - Structured Query Language -strukturalny język zapytań SQL SQL SQL SQL
Wprowadzenie do SQL SQL - Structured Query Language -strukturalny język zapytań Światowy standard przeznaczony do definiowania, operowania i sterowania danymi w relacyjnych bazach danych Powstał w firmie
Bardziej szczegółowoProjekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego
Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Publikacja jest dystrybuowana bezpłatnie Program Operacyjny Kapitał Ludzki Priorytet 9 Działanie 9.1 Poddziałanie
Bardziej szczegółowoBazy danych 7. SQL podstawy
Bazy danych 7. SQL podstawy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Structured Query Language Używane standardy: SQL92 SQL99 SQL:2003 Żaden dostawca nie jest w pełni zgodny
Bardziej szczegółowoFunkcje wbudowane PHP
Funkcje wbudowane PHP Funkcje daty i czasu Funkcja time() zwraca informacje na temat bieżącej daty i czasu. Nie posiada żadnych argumentów. Informacje o czasie dacie zwraca w formie liczby Liczba odpowiada
Bardziej szczegółowoJęzyk SQL. Rozdział 2. Proste zapytania
Język SQL. Rozdział 2. Proste zapytania Polecenie SELECT, klauzula WHERE, operatory SQL, klauzula ORDER BY. 1 Wprowadzenie do języka SQL Język dostępu do bazy danych. Język deklaratywny, zorientowany na
Bardziej szczegółowoKlasy: String, Random, Math. Korzystanie z dokumentacji.
Klasy: String, Random, Math. Korzystanie z dokumentacji. Ćwiczenia 3 7. Napisz program wyliczający największy wspólny dzielnik dwóch liczb całkowitych podanych przez użytkownika algorytmem Euklidesa. 8.
Bardziej szczegółowoWprowadzenie do projektowania i wykorzystania baz danych. Katarzyna Klessa
Wprowadzenie do projektowania i wykorzystania baz danych Katarzyna Klessa ` Informacje organizacyjne 1. Dyżury: wtorek 11:50-13:20 pokój / room 312aB Coll. Novum 2. Warunki zaliczenia przedmiotu: semestr
Bardziej szczegółowoProgramowanie Delphi obliczenia, schematy blokowe
Informatyka II MPZI2 ćw.2 Programowanie Delphi obliczenia, schematy blokowe Zastosowania obliczeń numerycznych Wyrażenia arytmetyczne służą do zapisu wykonywania operacji obliczeniowych w trakcie przebiegu
Bardziej szczegółowoWybór EUROPEAN będzie rozpoznawał dzień przed miesiącem, natomiast US miesiąc przed dniem.
Typy numeryczne Typy daty i czasu. W celu uniknięcia niejasności czy zapis 11-08-2005 oznacza - 11 sierpnia 2005, czy może 8 listopada 2005, należy ustalić sposób interpretacji daty (europejski lub amerykański).
Bardziej szczegółowoJę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ł
Bardziej szczegółowoMS Excel 2007 Kurs zaawansowany Wybrane Funkcje. prowadzi: Dr inż. Tomasz Bartuś. Kraków: 2008 04 18
MS Excel 2007 Kurs zaawansowany Wybrane Funkcje prowadzi: Dr inż. Tomasz Bartuś Kraków: 2008 04 18 Zastosowanie funkcji w formułach Funkcje Funkcja jest to innymi słowy predefiniowana formuła, która realizuje
Bardziej szczegółowoCREATE DATABASE ksiegarnia_internetowa DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Zestaw ćwiczeń1 Dzięki DDL (Data Definition Language) można operować na strukturach, w których dane są przechowywane czyli np. dodawać, zmieniać i kasować tabele lub bazy. Najważniejsze polecenia tej grupy
Bardziej szczegółowoCw.12 JAVAScript w dokumentach HTML
Cw.12 JAVAScript w dokumentach HTML Wstawienie skryptu do dokumentu HTML JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.skrypty Java- Script mogą być zagnieżdżane
Bardziej szczegółowoWykład 4. SQL praca z tabelami 1
Wykład 4 SQL praca z tabelami 1 Typy danych Typy liczbowe Typy całkowitoliczbowe Integer types - Typ INTEGER; 32-bitowa liczba ze znakiem z zakresu -2 31 do 2 31 1 - Typ SMALLINT; typ całkowity mniejszy
Bardziej szczegółowoPrzydatne sztuczki - sql. Na przykładzie postgres a.
Przydatne sztuczki - sql. Na przykładzie postgres a. M. Wiewiórko 05/2014 Plan Uwagi wstępne Przykład Rozwiązanie Tabela testowa Plan prezentacji: Kilka uwag wstępnych. Operacje na typach tekstowych. Korzystanie
Bardziej szczegółowoSamodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =
Systemy liczbowe Dla każdej liczby naturalnej x Î N oraz liczby naturalnej p >= 2 istnieją jednoznacznie wyznaczone: liczba n Î N oraz ciąg cyfr c 0, c 1,..., c n-1 (gdzie ck Î {0, 1,..., p - 1}) taki,
Bardziej szczegółowostrukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych
SQL SQL (ang. Structured Query Language): strukturalny język zapytań używany do tworzenia strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych
Bardziej szczegółowoArchitektura komputerów
Architektura komputerów Wykład 4 Jan Kazimirski 1 Reprezentacja danych 2 Plan wykładu Systemy liczbowe Zapis dwójkowy liczb całkowitych Działania arytmetyczne Liczby rzeczywiste Znaki i łańcuchy znaków
Bardziej szczegółowodr inż. Jarosław Forenc
Informatyka Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne I stopnia Rok akademicki 8/9 Wykład nr 4 (.3.9) Rok akademicki 8/9, Wykład nr 4 /33 Plan wykładu
Bardziej szczegółowoĆ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
Bardziej szczegółowoPrzegląd podstawowych funkcji Excel.
Przegląd podstawowych funkcji Excel. Spis treści I. Funkcje tekstu oraz pomocnicze... 1 1. FRAGMENT.TEKSTU(tekst;liczba_początkowa;liczba_znaków... 1 2. LEWY(tekst;liczba_znaków)... 2 3. Prawy (tekst;liczba_znaków)...
Bardziej szczegółowoJęzyk SQL, zajęcia nr 1
Język SQL, zajęcia nr 1 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Najpopularniejsze
Bardziej szczegółowoMySQL. Leksykon kieszonkowy. II wydanie
MySQL. Leksykon kieszonkowy. II wydanie Autor: George Reese T³umaczenie: Tomasz mijewski ISBN: 978-83-246-1385-4 Tytu³ orygina³u: MySQL Pocket Reference, 2nd Ed Format: B6, stron: 160 MySQL to jeden z
Bardziej szczegółowoWykład 8. SQL praca z tabelami 5
Wykład 8 SQL praca z tabelami 5 Podzapytania to mechanizm pozwalający wykorzystywać wyniki jednego zapytania w innym zapytaniu. Nazywane często zapytaniami zagnieżdżonymi. Są stosowane z zapytaniami typu
Bardziej szczegółowoWykł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,
Bardziej szczegółowoFUNKCJE TEKSTOWE W MS EXCEL
FUNKCJE TEKSTOWE W MS EXCEL ASC W językach korzystających z dwubajtowego zestawu znaków (DBCS) zmienia znaki o pełnej szerokości (dwubajtowe) na znaki o połówkowej szerokości (jednobajtowe). : ASC(tekst)
Bardziej szczegółowoMySQL. Leksykon kieszonkowy
IDZ DO PRZYK ADOWY ROZDZIA KATALOG KSI EK ZAMÓW DRUKOWANY KATALOG TWÓJ KOSZYK CENNIK I INFORMACJE ZAMÓW INFORMACJE O NOWO CIACH ZAMÓW CENNIK CZYTELNIA SPIS TRE CI KATALOG ONLINE DODAJ DO KOSZYKA FRAGMENTY
Bardziej szczegółowoProjektowanie systemów baz danych
Projektowanie systemów baz danych Seweryn Dobrzelewski 4. Projektowanie DBMS 1 SQL SQL (ang. Structured Query Language) Język SQL jest strukturalnym językiem zapewniającym możliwość wydawania poleceń do
Bardziej szczegółowoExcel - podstawa teoretyczna do ćwiczeń. 26 lutego 2013
26 lutego 2013 Ćwiczenia 1-2 Częste błędy i problemy: 1 jeżeli użyjemy niewłaściwego znaku dziesiętnego Excel potraktuje liczbę jak tekst - aby uniknać takich sytuacji używaj klawiatury numerycznej, 2
Bardziej szczegółowoPodstawowe zapytania SELECT (na jednej tabeli)
Podstawowe zapytania SELECT (na jednej tabeli) Struktura polecenia SELECT SELECT opisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje FROM nazwy tabel lub widoków WHERE warunek (wybieranie wierszy) GROUP
Bardziej szczegółowoWprowadzenie do baz danych
Wprowadzenie do baz danych Dr inż. Szczepan Paszkiel szczepanpaszkiel@o2.pl Katedra Inżynierii Biomedycznej Politechnika Opolska Wprowadzenie DBMS Database Managment System, System za pomocą którego można
Bardziej szczegółowo1. Wypisywanie danych
1. Wypisywanie danych Przykłady 1.1. Napisz program, który wypisze na ekran słowa Hello, world!. 1 // Przyklad 1: Hello, world! 3 using namespace std; 5 int main() { 6 cout
Bardziej szczegółowoBazy danych. Polecenia SQL
Bazy danych Baza danych, to miejsce przechowywania danych. Dane w bazie danych są podzielone na tabele. Tabele składają się ze ściśle określonych pól i rekordów. Każde pole w rekordzie ma ściśle ustalony
Bardziej szczegółowoJAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.
IŚ ćw.8 JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania. Skrypty JavaScript są zagnieżdżane w dokumentach HTML. Skrypt JavaScript
Bardziej szczegółowoBloki 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
Bardziej szczegółowo1 Podstawy c++ w pigułce.
1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,
Bardziej szczegółowoutworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy,
Lista 3 Zestaw I Zadanie 1. Zaprojektować i zaimplementować funkcje: utworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy, zapisz
Bardziej szczegółowoDr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI
Dr inż. Grażyna KRUPIŃSKA Grazyna.Krupinska@fis.agh.edu.pl D-10 pokój 227 WYKŁAD 7 WSTĘP DO INFORMATYKI Wyrażenia 2 Wyrażenia w języku C są bardziej elastyczne niż wyrażenia w jakimkolwiek innym języku
Bardziej szczegółowoPracownia Komputerowa wykład VI
Pracownia Komputerowa wykład VI dr Magdalena Posiadała-Zezula http://www.fuw.edu.pl/~mposiada 1 Przypomnienie 125 (10) =? (2) Liczby całkowite : Operacja modulo % reszta z dzielenia: 125%2=62 reszta 1
Bardziej szczegółowoARKUSZ KALKULACYJNY komórka
ARKUSZ KALKULACYJNY Arkusz kalkulacyjny program służący do obliczeń, kalkulacji i ich interpretacji graficznej w postaci wykresów. Przykłady programów typu Arkusz Kalkulacyjny: - Ms Excel (*.xls; *.xlsx)
Bardziej szczegółowo