+++ ARJUNA +++: tutorial Mysql 8
SELAMAT DATANG DI BLOGKU " ARJUNA"

tulisan arjun

Sabtu, 18 Juni 2011

tutorial Mysql 8


Mengisi data ke dalam tabel

Kita akan mulai mengisi data karyawan ke dalam tabel. Perintah yang digunakan adalah "INSERT
INTO". Caranya sebagai berikut:
mysql> insert into karyawan
    -> (nama, jenkel, kota, kodepos, tgllahir)
    -> values
    -> ("Ahmad Zobari", "L", "Bandung","41011","1977-10-02")
    -> ;
Query OK, 1 row affected (0.17 sec)

Anda perhatikan bahwa dalam pemasukkan data yang berjenis karakter, selalu diapit dengan tanda
kutip ganda ("). Bisa juga digunakan tanda kutip tunggal ('). Tetapi jangan dicampur dengan tanda
kutip ganda dan tanda kutip tunggal, misal: "Ahmad Sobari'. Perhatikan juga pada penulisan tanggal
lahir, menggunakan format "tahun-bulan-tanggal". Memang agak janggal. Tapi begitulah memang
standar MySQL untuk format penulisan tanggal. Kalau Anda perhatikan lebih teliti, mengapa kita
tidak memasukkan data untuk kolom "noid"? Ini karena sifat kolom noid yang auto_increment,
sehingga dia akan secara otomatis berisi dengan angka 1, dan terus bertambah 1, seiring dengan
penambahan data.
Nah, kita akan masukkan 4 buah record lagi dengan cara:
mysql> insert into karyawan
    -> (nama, jenkel, kota, kodepos, tgllahir)
    -> values
    -> ("Sundariwati", "P", "Bandung", "40123", "1978-11-12"),
    -> ("Ryan Cakep", "L", "Jakarta", "12111", "1981-03-21"),
    -> ("Zukarman","L", "Bekasi", "17211", "1978-08-10"),
    -> ("Yuliawati", "P", "Bogor", "00000", "1982-06-09")
    -> ;
Query OK, 4 rows affected (0.05 sec)
Records: 4  Duplicates: 0  Warnings: 0


Sekarang kita coba memasukkan data dengan cara yang lain lagi:




mysql> insert into karyawan
    -> set nama="Mawar",
    -> jenkel="P",
    -> kota="Bogor",
    -> kodepos="12345",
    -> tgllahir="1985-07-07"
    -> ;
Query OK, 1 row affected (0.05 sec)

Kita sudah memasukkan beberapa data. Bagaimana untuk melihat data-data yang sudah kita
masukkan tadi?




Melihat data pada tabel

Kita bisa melihat data yang ada di dalam tabel dengan menggunakan perintah "SELECT". Perintah
SELECT adalah perintah yang akan sering kita gunakan nantinya. Kita mulai dengan cara yang
paling sederhana dulu yaa..
mysql> select * from karyawan ;
+------+--------------+--------+---------+---------+------------+
| noid | nama         | jenkel | kota    | kodepos | tgllahir   |
+------+--------------+--------+---------+---------+------------+
|    1 | Ahmad Sobari | L      | Bandung | 41011   | 1977-10-02 |
|    2 | Sundariwati  | P      | Bandung | 40123   | 1978-11-12 |
|    3 | Ryan Cakep   | L      | Jakarta | 12111   | 1981-03-21 |
|    4 | Zukarman     | L      | Bekasi  | 17211   | 1978-08-10 |
|    5 | Yuliawati    | P      | Bogor   | 00000   | 1982-06-09 |
|    6 | Mawar        | P      | Bogor   | 12345   | 1985-07-07 |
+------+--------------+--------+---------+---------+------------+
6 rows in set (0.02 sec)

Perintah di atas menampilkan seluruh data yang ada di dalam tabel karyawan, karena menggunakan
tanda asterik "*" di dalam perintah SELECT. Bagaimana kalau kita hanya mau menampilkan
kolom nama dan jenis kelamin saja?
mysql> select nama, jenkel from karyawan
    -> ;
+--------------+--------+
| nama         | jenkel |
+--------------+--------+
| Ahmad Sobari | L      |
| Sundariwati  | P      |
| Ryan Cakep   | L      |
| Zukarman     | L      |
| Yuliawati    | P      |
| Mawar        | P      |
+--------------+--------+
6 rows in set (0.00 sec)

Kalau kita hanya mau menampilkan data-data karyawan yang berjenis kelamin perempuan saja,
bagaimana caranya? Cukup dengan menambahkan perintah "WHERE" pada "SELECT"
mysql> select nama, jenkel from karyawan
    -> where jenkel="P"




    -> ;
+-------------+--------+
| nama        | jenkel |
+-------------+--------+
| Sundariwati | P      |
| Yuliawati   | P      |
| Mawar       | P      |
+-------------+--------+
3 rows in set (0.00 sec)

Kita tampilkan data berdasarkan urutan nama karyawan dengan menambahkan perintah
"ORDER BY" pada "SELECT":
mysql> select * from karyawan
    -> order by nama ;
+------+--------------+--------+---------+---------+------------+
| noid | nama         | jenkel | kota    | kodepos | tgllahir   |
+------+--------------+--------+---------+---------+------------+
|    1 | Ahmad Sobari | L      | Bandung | 41011   | 1977-10-02 |
|    6 | Mawar        | P      | Bogor   | 12345   | 1985-07-07 |
|    3 | Ryan Cakep   | L      | Jakarta | 12111   | 1981-03-21 |
|    2 | Sundariwati  | P      | Bandung | 40123   | 1978-11-12 |
|    5 | Yuliawati    | P      | Bogor   | 00000   | 1982-06-09 |
|    4 | Zukarman     | L      | Bekasi  | 17211   | 1978-08-10 |
+------+--------------+--------+---------+---------+------------+
6 rows in set (0.00 sec)

Atau diurut berdasarkan kota:
mysql> select * from karyawan
    -> order by kota ;
+------+--------------+--------+---------+---------+------------+
| noid | nama         | jenkel | kota    | kodepos | tgllahir   |
+------+--------------+--------+---------+---------+------------+
|    1 | Ahmad Sobari | L      | Bandung | 41011   | 1977-10-02 |
|    2 | Sundariwati  | P      | Bandung | 40123   | 1978-11-12 |
|    4 | Zukarman     | L      | Bekasi  | 17211   | 1978-08-10 |
|    5 | Yuliawati    | P      | Bogor   | 00000   | 1982-06-09 |
|    6 | Mawar        | P      | Bogor   | 12345   | 1985-07-07 |
|    3 | Ryan Cakep   | L      | Jakarta | 12111   | 1981-03-21 |
+------+--------------+--------+---------+---------+------------+
6 rows in set (0.00 sec)

Atau diurut berdasarkan tanggal lahir:
mysql> select * from karyawan
    -> order by tgllahir ;
+------+--------------+--------+---------+---------+------------+
| noid | nama         | jenkel | kota    | kodepos | tgllahir   |
+------+--------------+--------+---------+---------+------------+
|    1 | Ahmad Sobari | L      | Bandung | 41011   | 1977-10-02 |
|    4 | Zukarman     | L      | Bekasi  | 17211   | 1978-08-10 |
|    2 | Sundariwati  | P      | Bandung | 40123   | 1978-11-12 |
|    3 | Ryan Cakep   | L      | Jakarta | 12111   | 1981-03-21 |
|    5 | Yuliawati    | P      | Bogor   | 00000   | 1982-06-09 |
|    6 | Mawar        | P      | Bogor   | 12345   | 1985-07-07 |
+------+--------------+--------+---------+---------+------------+
6 rows in set (0.00 sec)






Nah kalo yang sekarang diurut berdasarkan nama, tetapi dengan urutan terbalik (descending).
Cukup dengan menambahkan perintah "DESC" pada SELECT:
mysql> select * from karyawan
    -> order by nama DESC ;
+------+--------------+--------+---------+---------+------------+
| noid | nama         | jenkel | kota    | kodepos | tgllahir   |
+------+--------------+--------+---------+---------+------------+
|    4 | Zukarman     | L      | Bekasi  | 17211   | 1978-08-10 |
|    5 | Yuliawati    | P      | Bogor   | 00000   | 1982-06-09 |
|    2 | Sundariwati  | P      | Bandung | 40123   | 1978-11-12 |
|    3 | Ryan Cakep   | L      | Jakarta | 12111   | 1981-03-21 |
|    6 | Mawar        | P      | Bogor   | 12345   | 1985-07-07 |
|    1 | Ahmad Sobari | L      | Bandung | 41011   | 1977-10-02 |
+------+--------------+--------+---------+---------+------------+
6 rows in set (0.00 sec)

Bisa juga kalau yang diurutnya adalah tanggal lahir secara urutan terbalik (descending):
mysql> select * from karyawan
    -> order by tgllahir DESC ;
+------+--------------+--------+---------+---------+------------+
| noid | nama         | jenkel | kota    | kodepos | tgllahir   |
+------+--------------+--------+---------+---------+------------+
|    6 | Mawar        | P      | Bogor   | 12345   | 1985-07-07 |
|    5 | Yuliawati    | P      | Bogor   | 00000   | 1982-06-09 |
|    3 | Ryan Cakep   | L      | Jakarta | 12111   | 1981-03-21 |
|    2 | Sundariwati  | P      | Bandung | 40123   | 1978-11-12 |
|    4 | Zukarman     | L      | Bekasi  | 17211   | 1978-08-10 |
|    1 | Ahmad Sobari | L      | Bandung | 41011   | 1977-10-02 |
+------+--------------+--------+---------+---------+------------+
6 rows in set (0.00 sec)

Ternyata kita perlu menambahkan sebuah kolom field lagi, yaitu kolom gaji. Kolom Gaji
merupakan kolom numerik yang menampung data gaji pokok karyawan per bulannya. Jadi, yang
kita perlukan adalah jenis data INTeger dengan lebar data 12 digit. Penerapannya sebagai berikut
dengan menggunakan perintah ALTER. 
mysql> alter table karyawan
    -> ADD gaji INT(12) NOT NULL default 0
    -> ;
Query OK, 6 rows affected (0.25 sec)
Records: 6  Duplicates: 0  Warnings: 0 

Kita periksa struktur tabelnya dulu:
mysql> describe karyawan ;
+----------+-------------+------+-----+---------+----------------+
| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+
| noid     | int(10)     | NO   | PRI | NULL    | auto_increment |
| nama     | varchar(50) | NO   |     |         |                |
| jenkel   | char(1)     | YES  |     | NULL    |                |
| kota     | varchar(25) | NO   |     |         |                |
| kodepos  | char(5)     | NO   |     |         |                |
| tgllahir | date        | YES  |     | NULL    |                |
| gaji     | int(12)     | NO   |     | 0       |                |




+----------+-------------+------+-----+---------+----------------+
7 rows in set (0.01 sec)

Ya, kolom gaji sudah ditambahkan ke dalam tabel karyawan. Sekarang kita akan menambahkan
data gaji kepada tiap-tiap karyawan yang ada. Untuk memudahkan, kita tampilkan dulu semua data
yang ada di tabel karyawan:
mysql> select * from karyawan ;
+------+--------------+--------+---------+---------+------------+------+
| noid | nama         | jenkel | kota    | kodepos | tgllahir   | gaji |
+------+--------------+--------+---------+---------+------------+------+
|    1 | Ahmad Sobari | L      | Bandung | 41011   | 1977-10-02 |    0 |
|    2 | Sundariwati  | P      | Bandung | 40123   | 1978-11-12 |    0 |
|    3 | Ryan Cakep   | L      | Jakarta | 12111   | 1981-03-21 |    0 |
|    4 | Zukarman     | L      | Bekasi  | 17211   | 1978-08-10 |    0 |
|    5 | Yuliawati    | P      | Bogor   | 00000   | 1982-06-09 |    0 |
|    6 | Mawar        | P      | Bogor   | 12345   | 1985-07-07 |    0 |
+------+--------------+--------+---------+---------+------------+------+
6 rows in set (0.00 sec)

Tidak ada komentar:

Posting Komentar