Witamy!

Funkcje do manipulowania danymi w PostgreSQL

Brian Piccolo

Sr. Director, Digital Strategy

Baza danych Sakila

  • Wysoka normalizacja
  • Reprezentatywne typy danych
  • Funkcje niestandardowe
Funkcje do manipulowania danymi w PostgreSQL

Tematy

  • Popularne typy danych w PostgreSQL
  • Funkcje i operatory daty i czasu
  • Parsowanie i manipulowanie tekstem
  • Wyszukiwanie pełnotekstowe i rozszerzenia PostgreSQL
Funkcje do manipulowania danymi w PostgreSQL

Popularne typy danych

  • Tekstowe typy danych
    • CHAR, VARCHAR i TEXT
  • Numeryczne typy danych
    • INT i DECIMAL
  • Typy danych daty i czasu
    • DATE, TIME, TIMESTAMP, INTERVAL
  • Tablice
Funkcje do manipulowania danymi w PostgreSQL

Tekstowe typy danych

SELECT title 
FROM film
LIMIT 5
+-------------------+
| title             |
|-------------------|
| ACADEMY DINOSAUR  |
| ACE GOLDFINGER    |
| ADAPTATION HOLES  |
| AFFAIR PREJUDICE  |
| AFRICAN EGG       |
+-------------------+
SELECT description 
FROM film
LIMIT 2
+-----------------------------------------+
| description                             |
|-----------------------------------------|
| A Epic Drama of a Feminist And a Mad    |     
|  Scientist who must Battle a Teacher in |
|  The Canadian Rockies.                  |
| A Astounding Epistle of a Database      |
|  Administrator And a Explorer who       |
|  must Find a Car in Ancient China       |
+-----------------------------------------+
Funkcje do manipulowania danymi w PostgreSQL

Numeryczne typy danych

SELECT 
    payment_id 
FROM payment 
LIMIT 5
+-------------+
| payment_id  |
|-------------|
| 1           |
| 2           |
| 3           |
| 4           |
| 5           |
+-------------+
SELECT 
    amount
FROM payment 
LIMIT 5
+--------+
| amount |
|--------|
| 2.99   |
| 0.99   |
| 5.99   |
| 0.99   |
| 9.99   |
+--------+
Funkcje do manipulowania danymi w PostgreSQL

Określanie typów danych w istniejących tabelach

SELECT 
    title, 
    description, 
    special_features 
FROM FILM 
LIMIT 5
+---------------+------------------+------------------------------+
| title         |  description     | special_features             |
|---------------|------------------|------------------------------|
| ACADEMY D...  | A Epic...        | {Deleted Scenes,Behi...}     |
| ACE GOLD...   | A Astound..      | {Trailers,Deleted Scenes}    |
| AFFAIR PR...  | A Fanciful,..    | {Commentaries,Behind the...} |
+---------------+------------------+------------------------------+
Funkcje do manipulowania danymi w PostgreSQL

Określanie typów danych w istniejących tabelach

SELECT
    column_name, 
    data_type
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE column_name in ('title','description','special_features')
  AND table_name ='film';
+------------------+-------------------+
| column_name      | data_type         |
|------------------|-------------------|
| title            | character varying |
| description      | text              |
| special_features | ARRAY             |
+------------------+-------------------+
Funkcje do manipulowania danymi w PostgreSQL

Czas na ćwiczenia!

Funkcje do manipulowania danymi w PostgreSQL

Preparing Video For Download...