Tabeldosen
Dimana object type dapat diisi sebagai contoh table, table space, atau
index. Tidak semua objek database dapat direname setelah di create
Deleting data
Contoh : menghapus semua baris where col1 > 1000 pada Tabel
myTable
Updating data
UPDATE statement untuk melakukan update data pada table. Satu atau
lebih baris pada tabel dapat diupdate dengan 1 statemen
menggunakan WHERE clause. For each row selected for update, the
statement can update one or more columns.
For example:
UPDATE myTable SET col1 = -1 WHERE col2 < 0
UPDATE myTable SET col1 = -1,
col2 = ‘a’,
Jika update tanpa WHERE clause, semua baris pad Tabel akan diupdate.
Table joins
SELECT *
FROM student, enrollment
WHERE student.enrollment_no=enrollment.enrollment_no
OR
SELECT *
FROM student
INNER JOIN enrollment
ON student.enrollment_no=enrollment.enrollment_no
Outer joins Outer join adalah bentuk khusus dari join digunakan dalam
pernyataan SQL . Tabel pertama ditentukan dalam pernyataan SQL
dalam klausa FROM disebut sebagai tabel KIRI dan tabel disebut
sebagai tabel KANAN.
Hasil set merupakan gabungan dari hasil suatu equi - join , termasuk baris yang
gak match dari tabel kiri .
SELECT *
FROM STUDENT
LEFT OUTER JOIN ENROLLMENT
ON STUDENT.ENROLLMENT_NO = ENROLLMENT_NO
SELECT *
FROM STUDENT
RIGHT OUTER JOIN ENROLLMENT
SELECT *
FROM STUDENT
RIGHT OUTER JOIN ENROLLMENT
ON STUDENT.ENROLLMENT_NO = ENROLLMENT_NO
Hasil set merupakan gabungan dari hasil suatu equi - join , termasuk baris yang
gak match dari tabel kiri dan tabel kanan
SELECT *
FROM STUDENT
FULL OUTER JOIN ENROLLMENT
ON STUDENT.ENROLLMENT_NO = ENROLLMENT_NO
Union
Operator Union dapat digunakan untuk join yang mempunyai definisi
colom yang sama dan urutan kolom yang sama. Operator UNION
adanya hasil dengan baris yang sama (duplicate)
Intersection
Difference (Except)
Relational operators
Relational operators meliputi :
Basic mathematical operations like ‘+’, ‘-‘, ‘*’ and ‘/’
Logical operators like ‘AND’, ‘OR’ and ‘NOT’
String manipulation operators like ‘CONCATENATE’, ‘LENGTH’,
‘SUBSTRING’
Comparative operators like ‘=’, ‘<’, ‘>’, ‘>=’, ‘<=’ and ‘!=’
Grouping and aggregate operators
Other miscellaneous operations like DISTINCT
Sub-queries
Ketika suatu query diaplikan dengan query, query yang di luar sebagai query
utama atau parent query sedangkan internal query disebut sebagai sub-query
atau inner query . Sub query ini dapat mengembalikan nilai skalar , tunggal atau
ganda tupel , atau kumpulan data NULL . Sub - query dieksekusi pertama, dan
kemudian parent query dijalankan dengan menggunakan data yang
dikembalikan oleh sub - query .
Query di atas mengembalikan nama siswa yang termuda di antara semua siswa .
Sub-query " SELECT min ( usia ) DARI siswa " mengembalikan nilai skalar
yang menunjukkan usia minimum siswa . Parent query mengembalikan daftar
semua siswa yang usianya sama dengan nilai yang dikembalikan oleh sub -
query.
Correlated sub-query
Ketika sub-query dijalankan untuk setiap baris dari tabel induk , bukan sekali (
seperti yang ditunjukkan pada contoh di atas ) maka sub-query disebut sebagai
berkorelasi sub - query. Sebagai contoh:
Struktur Query :
Select (daftaratribut)
Where (kondisi)
Order by (daftaratribut)
Sebelum
update employee
set Alamat_E ='Malang'
where Alamat_E='malang';
Hasil
Pada SQL nama yang sama bisa dipergunakan untuk 2 atau lebih atribut selama
atributnya ada pada relasi yang berbeda. Jika pada suatu kasus ,suatu query
menunjuk ke 2/ lebih atribut dengan nama yang sama, kita harus menyertakan
nama relasi sebelum nama atribut untuk mencegah ambiguitas.
4. Tampilkan nama pegawai dan nama supervisornya. Nama pegawai dan nama
supervisor ada pada satu table yakni Employee
5. Tampilkan Nama proyek yang nama pekerjanya John Smith, perlu 3 tabel
: Employee (Nama pegawai), bekerjadan project(Nama project)
NOT EXISTS (Q): mengembalikan true jika tidak ada tuple yang memnuhi
query Q.
Fungsi Aggregate
Pada group by, group diaplikasikan setelah join kedua relasi. Sering kita ingin
menampilkan nilai dari fungsi hanya untuk grup yang memenuhi kondisi
tertentu.
Contoh dari query … di atas hanya ingin ditampilkan grup proyek dengan
jumlah pekerja >2. Hal ini bisa diatasi dengan menggunakan HAVING.
Having hanya akan menampilkan grup yang memenuhi kondisi tertentu
tersebut.
Like :perbandingan kondisi pada bagian dari string/substring. Bagian dari string
dispesifikasikan dengan menggunakan ‘%’ . ‘_‘ mengganti single karakter.
Order by
Order by: untuk mengurutkan tupel hasil dari query berdasarkan satu atau lebih
atribut,
Defaultnya ascending.
query
Buat view