SQL (Structure Query Language) – MySQL (Bagian 2: DML) Oleh: Euis Marlina
hp: 08179424319 email:
[email protected] http://euismarlina.edublogs.org
Inserting Data in MySQL Tables
Here
is a general form of INSERT.
INSERT into table_name (column1, column2....) values (value1, value2...);
Contoh: INSERT INTO data_pegawai (nama_pegawai, alamat_pegawai) values ("Manisha", “Yogyakarta");
Deleting Entries from Tables
The
SQL delete statement requires the table name and optional conditions. DELETE from table_name WHERE conditions;
Contoh: DELETE from data_pegawai WHERE id_pegawai = 1;
Updating Records The
SQL UPDATE command updates the data in tables. Its format is quite simple. UPDATE table_name SET column_name1 = value1, column_name2 = value2, column_name3 = value3 ... WHERE conditions;
Contoh Misalnya
merubah alamat pegawai bernama “Manisha” yang asalnya “Yogyakarta” menjadi “Sleman” UPDATE data_pegawai SET alamat_pegawai = ‘Sleman’ WHERE nama_pegawai = ‘Manisha’;
Displaying Data The
MySQL SELECT command is something like a print or write command of other languages. You can ask it to display text strings, numeric data, the results of mathematical expressions etc. Perintah SELECT menjadi kunci pengolahan data di database. SELECT merupakan inti dari bahasa Query yang paling banyak digunakan, terutama dalam aplikasi
Jenis Perintah SELECT Displaying
the MySQL version
number SELECT version(); Displaying
the current date and
time SELECT now(); Evaluating
expressions in MySQL SELECT ((4 * 4) / 10 ) + 25;
Jenis Perintah SELECT Displaying
the current Day, Month
and Year SELECT DAYOFMONTH(CURRENT_DATE); SELECT MONTH(CURRENT_DATE); SELECT YEAR(CURRENT_DATE); Displaying
text strings
SELECT 'I Love MySQL';
CONCAT dan AS With
SELECT you can concatenate values for display. CONCAT accepts arguments between parenthesis. These can be column names or plain text strings. Text strings have to be surrounded with quotes (single or double). You can also give descriptive names to these columns using AS. SELECT CONCAT(‘Kota’, " ", alamat_pegawai) AS Alamat from
Aggregate Functions Totalling
column values with MySQL SUM Misalnya kita akan menjumlahkan gaji semua pegawai. Sebelumnya, tambahkan dulu field gaji pada tabel data_pegawai, dan inputkan datanya. SELECT SUM(gaji) from data_pegawai;
Finding
the Average Menampilkan rata-rata gaji pegawai. SELECT AVG(gaji) from data_pegawai;
Aggregate Functions Minimum
value Menampilkan gaji minimum.
SELECT MIN(gaji) from data_pegawai; Maximum value Menampilkan gaji maksimum. SELECT MAX(gaji) from data_pegawai; Counts the number of entries Menampilkan jumlah nama_pegawai yang ada dalam tabel. SELECT COUNT(nama_pegawai) from data_pegawai;
The Greater Than and Lesser Than Operators Menggunakan
operator lebih dari (>), lebih dari atau sama dengan (>=), kurang dari (<) dan kurang dari atau sama dengan (<=). SELECT nama_pegawai, alamat_pegawai from data_pegawai where gaji > 500000; SELECT nama_pegawai, alamat_pegawai from data_pegawai where gaji <= 500000;
Ordering Data Mengurutkan
data yang ditampilkan dengan ORDER BY SELECT nama_pegawai, alamat_pegawai from data_pegawai ORDER by nama_pegawai;
The
ORDER BY clause can sort in an ASCENDING (ASC) or DESCENDING (DESC) order depending upon the argument supplied. SELECT nama_pegawai, alamat_pegawai from data_pegawai ORDER by nama_pegawai DESC;
Limiting Data Retrieval Untuk
membatasi jumlah record yang ditampilkan, gunakan klausa LIMIT. Misalnya akan menampilkan 5 record. SELECT nama_pegawai, alamat_pegawai from data_pegawai LIMIT 5; You
can couple LIMIT with ORDER BY. SELECT nama_pegawai, alamat_pegawai from data_pegawai ORDER by nama_pegawai ASC LIMIT 5;
Extracting Subsets Klausa
LIMIT digunakan juga untuk meng-extract sebuah subset data yang ditampilkan. The general form of this LIMIT is: SELECT (whatever) from table LIMIT starting row, Number to extract; Misalnya
jumlah record dalam sebuah tabel ada 10, yang akan ditampilkan mulai record ke-4 dengan jumlah record yang ditampilkan 3. SELECT nama_pegawai, alamat_pegawai
The DISTINCT Keyword DISTINCT
digunakan untuk menghilangkan data yang sama. Misalnya asal kota pegawai ada yang sama. Untuk mengetahui dari mana saja asal pegawai, tentunya kita menginginkan data kota yang sama tidak double ditampilkan. Maka SQL-nya : SELECT DISTINCT alamat_pegawai from data_pegawai; Also,
you can sort the unique entries using ORDER BY. SELECT DISTINCT alamat_pegawai from data_pegawai ORDER by alamat_pegawai;
Pattern Matching with T ext D ata Operator sama dengan (=) sebagai pembanding yang digunakan untuk menampilkan data dengan format teks tertentu. Misalnya akan menampilkan nama_pegawai yang alamatnya dari Sleman, maka SQL-nya: SELECT nama_pegawai, alamat_pegawai from data_pegawai WHERE alamat_pegawai=“Sleman”;
LIKE LIKE
digunakan untuk menampilkan data yang mengandung string tertentu. LIKE memiliki pasangan yaitu tanda persen (%). Jika ingin menampilkan nama pegawai yang diawali huruf S.
SELECT nama_pegawai from data_pegawai WHERE nama_pegawai LIKE “S%”; Jika
ingin menampilkan nama pegawai yang huruf
akhirnya S.
SELECT nama_pegawai from data_pegawai WHERE nama_pegawai LIKE “%S”; Jika
ingin menampilkan nama pegawai yang
mengandung huruf S. SELECT nama_pegawai from data_pegawai
Logical Operators SQL
conditions can also contain Boolean (logical) operators. They are AND, OR, NOT. Jika ingin menampilkan nama pegawai yang gajinya lebih dari 50000 dan kurang dari 70000.
SELECT nama_pegawai from data_pegawai WHERE gaji > 50000 AND gaji < 70000; Jika
ingin menampilkan nama pegawai yang
gajinya 50000 atau 70000.
SELECT nama_pegawai from data_pegawai WHERE gaji = 50000 OR gaji = 70000; Jika
ingin menampilkan nama pegawai yang tidak
mengandung huruf S.
SELECT nama_pegawai from data_pegawai WHERE nama_pegawai NOT LIKE “%S%”;
IN and BETWEEN IN
artinya di dalam, dan Between artinya antara.
Jika
ingin menampilkan nama pegawai yang alamatnya Bantul dan Sleman. SELECT nama_pegawai from data_pegawai WHERE alamat_pegawai IN (‘Sleman’,’Bantul’);
Jika
ingin menampilkan nama pegawai yang alamatnya bukan dari Bantul dan Sleman. SELECT nama_pegawai from data_pegawai WHERE alamat_pegawai NOT IN (‘Sleman’,’Bantul’);
Jika
ingin menampilkan nama pegawai yang
gajinya >=50000 dan <=70000.
SELECT nama_pegawai from data_pegawai WHERE gaji BETWEEN 50000 AND 70000;