Laboratorium Baz Danych. Zapytania SQL (część 3)



Podobne dokumenty
Laboratorium Baz Danych. Zapytania SQL. 2. Wszystkie utworzone zapytania umieszczamy w skrypcie, który pokazujemy prowadzącemu

PL/SQL. Funkcje wbudowane

Laboratorium Bazy danych SQL 2

a) Polecenie: Wyświetl wszystkie rekordy z tabeli Pracownicy (wszystkie atrybuty)

E.14 Bazy Danych cz. 12 SQL Wybrane funkcje serwera MySQL

Bazy Danych. Ćwiczenie 11: Wybrane funkcje wbudowane

Funkcje. Rozdział 3a Funkcje wierszowe. Funkcje znakowe (1) Funkcje wierszowe

Język SQL. Rozdział 3. Funkcje wierszowe

Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych

Oracle PL/SQL. Paweł Rajba.

Laboratorium nr 7. Temat: Podstawy języka zapytań SQL (część 1) 1. Wprowadzenie do laboratorium

Bazy danych SQL Server 2005

JAVAScript w dokumentach HTML (1)

Bazy danych 6. SQL funkcje daty i czasu, zmienne tymczasowe, aliasy

Cw.12 JAVAScript w dokumentach HTML

Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane

OBLICZENIA NA DANYCH

JAVAScript w dokumentach HTML (1) JavaScript jest to interpretowany, zorientowany obiektowo, skryptowy język programowania.

Administracja i programowanie pod Microsoft SQL Server 2000

Funkcje wbudowane PHP

Klasy: String, Random, Math. Korzystanie z dokumentacji.

Znaki w tym systemie odpowiadają następującym liczbom: I=1, V=5, X=10, L=50, C=100, D=500, M=1000

Pobieranie danych z pojedynczych tabel. Wprowadzenie

Symulacja w przedsiębiorstwie

Podstawy i języki programowania

Aby uruchomić program klienta i połączyć się z serwerem, należy komendę:

Stałe oznaczane są słowem kluczowym final. Do stałej wartość można przypisać tylko raz. Dobrą konwencją jest nazywanie stałych wielkimi literami

1 P roste e t ypy p d a d n a ych c - c ąg ą g d a d l a szy 2 T y T py p z ł z o ł żo ż ne e d a d n a ych c : T BLICE

Programowanie 2 - Tablice i łańcuchy

PL/SQL. Część 1 Oracle SQL. Piotr Medoń

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

SQL, LIKE, IN, CASE, EXISTS. Marcin Orchel

Zagadnienia podstawowe

Wprowadzenie do baz danych

2. Łańcuchy tekstowe w PHP

ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem

MS Excel 2007 Kurs zaawansowany Wybrane Funkcje. prowadzi: Dr inż. Tomasz Bartuś. Kraków:

Programowanie w języku Java

Ściągawka z funkcji i właściwości systemowych VBA. Opis działania i parametrów. Nazwa funkcji. Składnia zwracanej wartości

Typy danych, cd. Łańcuchy znaków

Klasa 6. Liczby dodatnie i liczby ujemne

Projektowanie systemów baz danych

1.06 Wyświetl dane pracowników, którzy pracują w departamencie o nr (Id) różnym od 3.

Autor: Joanna Karwowska

S Instrukcje rozszerzone oraz umożliwiające operacje na znakach i łańcuchach. Automatyka i mechatronika

1. Wprowadzanie danych z klawiatury funkcja scanf

Prolog struktury danych oraz obliczenia. 1. Arytmetyka?- Y is 2+2. Y = 4. ?- 5 is 3+3. false. ?- Z is (3.9 / 2.1). Z =

Kurs. Podstawy MySQL

1. Wypisywanie danych

Odwrotna Notacja Polska

Współczesne systemy baz danych

I. Podstawy języka C powtórka

ŁAŃCUCHY W JĘZYKU C/C++

SQL - Structured Query Language -strukturalny język zapytań SQL SQL SQL SQL

Zakład Hydrologii i Geoinformacji, Instytut Geografii UJK

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

System Liczbowe. Szesnastkowy ( heksadecymalny)

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

SYSTEMY LICZBOWE 275,538 =

lekcja 8a Gry komputerowe MasterMind

1 Wielokrotne powtarzanie tych samych operacji

Architektura systemów komputerowych Laboratorium 14 Symulator SMS32 Implementacja algorytmów

Architektura systemów komputerowych Laboratorium 5 Kodowanie liczb i tekstów

Współczesne systemy baz danych

BAZY DANYCH JĘZYK ZAPYTAŃ BAZ DANYCH SQL. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza

EXCEL TABELE PRZESTAWNE

wagi cyfry pozycje

Metoda znak-moduł (ZM)

PRÓBNY EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE CZĘŚĆ PRAKTYCZNA

1 Obsługiwane funkcje wyzwalaczy

Laboratorium 3: Tablice, tablice znaków i funkcje operujące na ciągach znaków. dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

2. Zmienne i stałe. Przykłady Napisz program, który wypisze na ekran wynik dzielenia 281 i 117 w postaci liczby mieszanej (tj. 2 47/117).

Funkcje. Rozdział 3. Funkcje. Funkcje znakowe (1) Funkcje wierszowe

XQuery. sobota, 17 grudnia 11

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

LABORATORIUM 1

1.1. Pozycyjne systemy liczbowe

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie

Metody numeryczne Laboratorium 2

utworz tworzącą w pamięci dynamicznej tablicę dwuwymiarową liczb rzeczywistych, a następnie zerującą jej wszystkie elementy,

1259 (10) = 1 * * * * 100 = 1 * * * *1

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

4. Funkcje. Przykłady

FUNKCJE TEKSTOWE W MS EXCEL

Język skryptowy: Laboratorium 1. Wprowadzenie do języka Python

do drukowania tekstu służy funkcja echo <?php echo "hello world!";?> jeżeli użyjemy jej kilka razy: <?php

Struktura drzewa w MySQL. Michał Tyszczenko

EGZAMIN MATURALNY Z INFORMATYKI

ARCHITEKTURA KOMPUTERÓW Systemy liczbowe

Laboratorium 6: Ciągi znaków. mgr inż. Leszek Ciopiński dr inż. Arkadiusz Chrobot dr inż. Grzegorz Łukawski

Klasa 6. Liczby dodatnie i liczby ujemne

Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych

Narzędzia informatyczne w językoznawstwie

Funkcja INITCAP. SQL> select initcap(dname), initcap(loc) from dept; Funkcja SUBSTR

Podstawy Programowania Podstawowa składnia języka C++

Excel - podstawa teoretyczna do ćwiczeń. 26 lutego 2013

Transkrypt:

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 prowadzącemu Funkcje daty i czasu NOW() zwraca zarówno datę, jak i czas systemowy CURDATE(), CURTIME() - wynik działania tych funkcji jest odpowiednio bieżąca data i bieżący czas. 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 5.24). DATEDIFF odejmuje dwie daty DATE ADD dodaje dwie daty Funkcje operujące na łańcuchach znaków Nazwa funkcji Opis ASCII() wyznacza kod ASCII znaku BIN() wyznacza kod binarny podanej liczby CHAR() Zwraca znak gdy parametrem jest liczba CONCAT() Wyznacza złączenie łańcuchów znaków LENGTH() Wyznacza długość łańcucha znaków LOWER() Konwersja do małych liter LPAD() Zwraca łańcuch który z lewej strony jest uzupełniony podanymi znakami LTRIM() Usuwa odstępy z lewej strony RPAD() Zwraca łańcuch który z prawej strony jest uzupełniony podanymi znakami RTRIM() Usuwa odstępy z prawej strony SUBSTR() Zwraca wybrany łańcuch znaków UPPER() Konwersja do dużych liter Funkcje liczbowe Nazwa funkcji ABS() CEILING(), CEIL() FLOOR() PI() POW(), POWER() RAND() ROUND() TRUNCATE() Opis Wyznacza wartość bezwzględną Zaokrąglanie w gorę Zaokrąglanie w dół Wartość liczby π Podnoszenie argumentu funkcji do potęgi Generuje losowej liczby Zaokrągla liczby Odcięcie do zadanej liczby miejsc dziesiętnych 1

Zadania: 1. Wypisz raport o fakturach. Użyj funkcji concat(). Jako wynik powinniśmy otrzymać: +--------------------------------------------------+ Raport o fakturach +--------------------------------------------------+ Faktura nr 1001 jest wystawiona na Myron Orlando Faktura nr 1002 jest wystawiona na Leona Dunne Faktura nr 1003 jest wystawiona na Kathy Smith Faktura nr 1004 jest wystawiona na Leona Dunne Faktura nr 1005 jest wystawiona na Anne Farriss Faktura nr 1006 jest wystawiona na Myron Orlando Faktura nr 1007 jest wystawiona na Amy O Brian Faktura nr 1008 jest wystawiona na Leona Dunne +--------------------------------------------------+ 2. Wyświetl informacje o nazwiskach klientów i nazwach dostawców. Użyj operatora UNION i funkcji concat(). Jako wynik powinniśmy otrzymać: +------------------------------------+ informacje +------------------------------------+ B&K, Inc.- to jest hurtowina Brackman Bros.- to jest hurtowina Brown- to jest klient Bryson, Inc.- to jest hurtowina D&E Supply- to jest hurtowina Damal Supplies- to jest hurtowina Dome Supply- to jest hurtowina Dunne- to jest klient Farriss- to jest klient Gomez Bros.- to jest hurtowina O Brian- to jest klient Olowski- to jest klient ORDVA, Inc.- to jest hurtowina Orlando- to jest klient Ramas- to jest klient Randsets Ltd.- to jest hurtowina Rubicon Systems- to jest hurtowina Smith- to jest klient SuperLoo, Inc.- to jest hurtowina Williams- to jest klient +------------------------------------+ 2

3. Wyświetl raport o dostawcach produktów. Jako wynik powinniśmy otrzymać: +------------------------------------------------------------+ Informacja +------------------------------------------------------------+ Firma Bryson, Inc. dostarcza 2 produkty na kwote 16.94 Firma D&E Supply dostarcza 1 produkty na kwote 8.45 Firma Gomez Bros. dostarcza 3 produkty na kwote 37.47 Firma Randsets Ltd. dostarcza 2 produkty na kwote 83.94 Firma ORDVA, Inc. dostarcza 3 produkty na kwote 466.78 Firma Rubicon Systems dostarcza 3 produkty na kwote 268.89 +------------------------------------------------------------+ 4. Wyświetl informacje o cenach produktów i ich dostawcach. Dodatkowo wyświetl zaokrąglone ceny produktów (użyj funkcji round()). Jako wynik powinniśmy otrzymać: +-----------+--------+-------------+-----------------+ kod prod. cena cena zaokr. DOSTAWCA +-----------+--------+-------------+-----------------+ 89-WRE-Q 256.99 257 ORDVA, Inc. WR3/TT3 119.95 120 Rubicon Systems 11QER/31 109.99 110 Rubicon Systems 2232/QTY 109.92 110 ORDVA, Inc. 2232/QWE 99.87 100 ORDVA, Inc. 1558-QW1 43.99 44 Randsets Ltd. 1546-QQ2 39.95 40 Randsets Ltd. 2238/QPD 38.95 39 Rubicon Systems 14-Q1/L3 17.49 17 Gomez Bros. 13-Q2/P2 14.99 15 Gomez Bros. 23109-HB 9.95 10 Bryson, Inc. SW-23116 8.45 8 D&E Supply SM-18277 6.99 7 Bryson, Inc. 54778-2T 4.99 5 Gomez Bros. +-----------+--------+-------------+-----------------+ 5. Wyznacz obwód i pole powierzchni koła o promieniu 10. Użyj funkcji pi(), pow() i round() do zaokrąglenia rezultatów. Jako wynik powinniśmy otrzymać: +-------+------+ obwod pole +-------+------+ 60 314 +-------+------+ 6. Wyświetl ile dni minęło od dnia rozpoczęcia drugiej wojny światowej. Użyj funkcji DATEDIFF. Jako wynik powinniśmy otrzymać: 3

+------------+---------------------------+ dzisiaj l. dni od rozpoczecia 2WS +------------+---------------------------+ 2007-05-18 24731 +------------+---------------------------+ 7. Wypisz kody produktów i różnice pomiędzy dniem wystawienia faktury (pole invoice.inv date) na której jest podany produkt a dniem zakupu produktu (pole product.p indate). Wypisujemy tylko te produkty dla których różnica jest większa od 0. Jako wynik powinniśmy otrzymać: +----------+---------+ produkt roznica +----------+---------+ 13-Q2/P2 34 1546-QQ2 1 2232/QTY 18 54778-2T 32 +----------+---------+ 8. Korzystając z funkcji CONCAT(), UPPER(), LOWER(), LPAD() i RPAD() należy uzyskać poniższy wynik. +----------------------+ info +----------------------+ #####BROWNjames##### #####DUNNEleona##### ###FARRISSanne###### ###O BRIANamy####### ###OLOWSKIpaul###### ###ORLANDOmyron##### #####RAMASalfred#### #####SMITHkathy##### #####SMITHolette#### ##WILLIAMSgeorge#### +----------------------+ 9. korzystając z funkcji SUBSTR() wyznacz inicjały każdego z klientów. Jako wynik powinieneś otrzymać: Nazwisko i imie Inicjaly Brown James B.J. Dunne Leona D.L. Farriss Anne F.A. O Brian Amy O.A. Olowski Paul O.P. Orlando Myron O.M. 4

Ramas Alfred R.A. Smith Kathy S.K. Smith Olette S.O. Williams George W.G. 10. Wypisz dane klientów oraz liczbę zakupionych przez nich produktów. Wynik musi być sformatowany tak jak poniżej. +-----------------+-------------------------+ Imie i nazwisko liczba zakup. produktow +-----------------+-------------------------+ Myron ORLANDO 6 Leona DUNNE 6 Kathy SMITH 3 Amy O BRIAN 2 Anne FARRISS 1 +-----------------+-------------------------+ 11. Wypisz dane klientów których nazwiska zaczynają się od litery O oraz sumę cen wszystkich zakupionych przez nich produktów. Jako wynik powinieneś otrzymać: Imie i nazwisko suma Myron ORLANDO 422.7700 Amy O BRIAN 34.9700 12. Wyświetl dane o pracownikach, których nazwiska sa dłuższe niż 5 znaków. Wyświetlić długość nazwisk i imion tych pracowników i posortować odpowiednio wynik. Użyj funkcji length(). Jako wynik powinniśmy otrzymać: +----------+--------------------+--------+-------------------+ nazwisko l. znakow nazwiska imie l. znakow imienia +----------+--------------------+--------+-------------------+ williams 8 george 6 orlando 7 myron 5 olowski 7 paul 4 farriss 7 anne 4 o brian 7 amy 3 +----------+--------------------+--------+-------------------+ 13. Do bieżącej daty i godziny dodaj 2 dni, 5 godzin oraz 8 minut. Jako wynik powinieneś otrzymać: +---------------------+---------------------+ teraz po dodaniu 5

+---------------------+---------------------+ 2007-05-18 10:19:53 2007-05-20 15:27:53 +---------------------+---------------------+ 14. Używając odpowiednich funkcji wbudowanych MySQL, wyznacz informacje dotyczące bieżącego dnia. Jako wynik powinieneś otrzymać +------------+--------------------------------------------------------------+ dzisiaj dane +------------+--------------------------------------------------------------+ 2007-05-18 dzisiaj jest 138 dzien roku 2007,czyli 18 dzien 5 miesiaca +------------+--------------------------------------------------------------+ 6