Erinevus lehekülje "PostgreSQL SQL" redaktsioonide vahel

Allikas: Kuutõrvaja
(Andmebaasi klient)
(Andmebaasi klientprogramm)
13. rida: 13. rida:
 
  ----------
 
  ----------
 
         25
 
         25
 +
(1 row)
 +
 +
* andmebaasi klient töötab sõnedega
 +
 +
select 'Hello' || ' World!';
 +
    ?column? 
 +
--------------
 +
  Hello World!
 
  (1 row)
 
  (1 row)
  

Redaktsioon: 8. märts 2010, kell 13:22

Sissejuhatus

TODO

Andmebaasi klientprogramm

Reeglina sisaldab andmebaasitarkvara lisaks andmebaasi serverile ka mingit terminalil kasutatavat nö käsurea klientprogrammi, nt PostgreSQL puhul on selleks programm psql.

  • andmebaasi kliendi kasutamine kalkulaatorina
select (5 * 5);
 ?column? 
----------
       25
(1 row)
  • andmebaasi klient töötab sõnedega
select 'Hello' || ' World!';
   ?column?   
--------------
 Hello World!
(1 row)
  • Andmebaasi kliendi juures saab määrata esituse formaati, nt (vaikimisi on see aligned)
\pset format html

Select

select lausega saab lihtsamal juhul kasutada andmebaasis kirjeldatud funktsioone, nt

select sqrt(25);

Join

TODO

Mõisted

  • result set - vastus andmebaasile esitatud päringule, või sisaldada mitte midagi, ühte või enamat rida

Misc laused

  • tabel ühte tehtud päringu tulemuste lisamine tabel kahte
insert into tabel2 (nimi, aadress) select nimi, aadress from tabel1
  • Andmete kopeerimine failisüsteemi
copy customers to '/tmp/customers.txt';
  • Andmete kopeerimine failisüsteemist
copy customers from '/tmp/customers.txt';

Indeksid

TODO

Vaated

TODO

Transaktsioon

TODO

Jõudlus

explain verbose select * from teenused where nimi='teenuse nimi_O_13437';
                                 QUERY PLAN                                 
----------------------------------------------------------------------------
 Bitmap Heap Scan on teenused2  (cost=6.60..196.17 rows=48 width=48)
   Output: id, nimi, aadress
   Recheck Cond: ((nimi)::text = 'teenuse nimi_O_13437'::text)
   ->  Bitmap Index Scan on teenused_idx  (cost=0.00..6.59 rows=48 width=0)
         Index Cond: ((nimi)::text = 'teenuse nimi_O_13437'::text)

Kursorite kasutamine

TODO

Kasulikud lisamaterjalid