Tampilkan postingan dengan label mysql. Tampilkan semua postingan
Tampilkan postingan dengan label mysql. Tampilkan semua postingan

Kamis, 03 Oktober 2019

Mengatasi This Is Incompatible With Sql_Mode=Only_Full_Group_By Pada Mysql


Ketika kita melaksanakan query di mysql kita mendapat error ibarat pada gambar diatas. Kurang lebih jikalau dijalankan memakai phpMyadmin akan keluar error "this is incompatible with sql_mode=only_full_group_by". Kasus yang saya alami pada CMS Perpustakaan Slims 8. Pada hidangan Pustakawan tidak sanggup menampilkan halaman laporan pengunjung setiap hari ibarat pada gambar dibawah ini:

Error sanggup diketahui melalui log pada PHP. Log yang muncul seperi berikut:
[Wed Oct 02 18:13:43.480066 2019] [:error] [pid 3459] [client 192.168.50.2:58914] PHP Fatal error:  Call to a member function fetch_row() on boolean in /home/elibrary/web/elibrary.domain.cc/public_html/admin/modules/reporting/customs/visitor_report_day.php on line 131, referer: https://elibrary.domain.cc/admin/index.php
Letak permasalahannya Pada file visitor_report_day.php pada baris 131
Error terletak pada query visitor. Query sebagai berikut:
SELECT SUBSTRING(`checkin_date`, 9, 2) AS `mdate`, COUNT(visitor_id) AS `vtotal` FROM `visitor_count` WHERE `checkin_date` LIKE '$selected_year-$selected_month%' GROUP BY DATE(`checkin_date`)
Ketika kita jalankan pada PHPMyAdmin tampilannya ibarat berikut:
Masalah terjadi dikarenakan memakai alias dua kali ialah pada ketika menciptakan alias mdate dan vtotal. Untuk mengatasi problem tersebut kita memerlukan konfigurasi pada sisi mysql server.

Cara melaksanakan konfigurasi dengan merubah file my.cnf yang berada pada direktori /etc/mysql pada linux ubuntu. Lakukan edit memakai perintah nano:
sudo nano /etc/mysql/my.cnf
Kemudian tambahkan script berikut ini
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 

Kemudian save dengan menekan ctrl+o dan ctrl+x. Setelah melaksanakan save konfigurasi lakukan restart pada mysql server, ibarat berikut ini:
sudo service mysql restart
Kemudian jalankan kembali query atau lihat aplikasi apakah sudah berjalan dengan normal.



Sebagai pelengkap jikalau pada sistem operasi jendela file konfigurasi pada C:/xampp/mysql/bin/ file konfigurasi my.cnf atau my.ini.

Semoga Bermanfaat

Mengatasi This Is Incompatible With Sql_Mode=Only_Full_Group_By Pada Mysql


Ketika kita melaksanakan query di mysql kita mendapat error ibarat pada gambar diatas. Kurang lebih jikalau dijalankan memakai phpMyadmin akan keluar error "this is incompatible with sql_mode=only_full_group_by". Kasus yang saya alami pada CMS Perpustakaan Slims 8. Pada hidangan Pustakawan tidak sanggup menampilkan halaman laporan pengunjung setiap hari ibarat pada gambar dibawah ini:

Error sanggup diketahui melalui log pada PHP. Log yang muncul seperi berikut:
[Wed Oct 02 18:13:43.480066 2019] [:error] [pid 3459] [client 192.168.50.2:58914] PHP Fatal error:  Call to a member function fetch_row() on boolean in /home/elibrary/web/elibrary.domain.cc/public_html/admin/modules/reporting/customs/visitor_report_day.php on line 131, referer: https://elibrary.domain.cc/admin/index.php
Letak permasalahannya Pada file visitor_report_day.php pada baris 131
Error terletak pada query visitor. Query sebagai berikut:
SELECT SUBSTRING(`checkin_date`, 9, 2) AS `mdate`, COUNT(visitor_id) AS `vtotal` FROM `visitor_count` WHERE `checkin_date` LIKE '$selected_year-$selected_month%' GROUP BY DATE(`checkin_date`)
Ketika kita jalankan pada PHPMyAdmin tampilannya ibarat berikut:
Masalah terjadi dikarenakan memakai alias dua kali ialah pada ketika menciptakan alias mdate dan vtotal. Untuk mengatasi problem tersebut kita memerlukan konfigurasi pada sisi mysql server.

Cara melaksanakan konfigurasi dengan merubah file my.cnf yang berada pada direktori /etc/mysql pada linux ubuntu. Lakukan edit memakai perintah nano:
sudo nano /etc/mysql/my.cnf
Kemudian tambahkan script berikut ini
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 

Kemudian save dengan menekan ctrl+o dan ctrl+x. Setelah melaksanakan save konfigurasi lakukan restart pada mysql server, ibarat berikut ini:
sudo service mysql restart
Kemudian jalankan kembali query atau lihat aplikasi apakah sudah berjalan dengan normal.



Sebagai pelengkap jikalau pada sistem operasi jendela file konfigurasi pada C:/xampp/mysql/bin/ file konfigurasi my.cnf atau my.ini.

Semoga Bermanfaat

Senin, 08 April 2019

Perbedaan Inner Join, Left Join, Right Join, Dan Full Join Pada Mysql

Pagi yang cerah untuk menulis tutorial kali ini. Share kali ini wacana pengetahuan mengenai database mysql atau MariaDB. Pada tutorial ini akan dibahas perbedaan perintah MySQL LEFT JOIN, RIGHT JOIN, INNER JOIN dan FULL JOIN. Untuk fungsinya niscaya kalian sudah paham kalau belum niscaya tidur waktu dikelas. Perintah JOIN dalam SQL dipakai untuk menampilkan data pada table yang saling berelasi atau tanpa berelasi tapi berafiliasi . Artinya kita sanggup menampilkan data dalam beberapa table dengan melihat ada kesamaan antar tabel walau ada entitas yang berbeda namun isinya sanggup kita hubungkan. Penjelasan lebih detail sanggup ditanyakan dikelas matakuliah masing-masing ya. Suapaya tidak kelamaan pusingnya, kini saya akan mempraktekan semuanya.
Pertama saya akan menciptakan database di terminal (kalau memakai Linux atau Mac, kalau Windows namanya CMD). 
*catatan perintah yang dilakukan khusus linux dengan LAMPP (XAMPP), untuk os lainnya silahkan menyesuaikan.
Saya akan menciptakan database dengan nama belajarjoin ingat tanpa spasi dan aksara kecil semua:
Perintahnya sudah pernah lihatkan? , baca-baca ulang dan ingat-ingat waktu dikelas ya.
Selanjutnya saya akan menciptakan dua tabel, yang dipakai untuk praktek join. tabel yang dibentuk ialah tabel kelas dan tabel ruang
Perintahnya dasar ibarat ini niscaya sudah hafal, kalau belum ya kebangetan, selalu saya ingatkan lagi baca-baca ulang dan ingat-ingat waktu dikelas ya.
sengaja saya buat 2 tabel dan sedikit entitas, biar pemahaman kalian lebih mudah, jikalau ingin lebih banyak tabel dan entitas ya harus sanggup dulu dari yang kecil. bertahap lama-lama jadi bukit kan?



Selanjutnya kita isi data pada kedua tabel, jangan banyak-banyak ya cukup 5 data pada tabel kelas dan 6 pada tabel ruang. isiannya disamakan dengan gambar diatas ya. selanjutnya cek isi pada kedua tabel:

Selanjutnya kita berguru Join yang pertama ialah inner join.


Silahkan diperhatikan query pada gambar diatas. Kaprikornus apa itu inner join?

INNER JOIN ialah sebuah perintah yang dipakai untuk menampilkan sebuah data atau record dengan menghubungkan dua table atau lebih dalam satu perintah, pada perintah inner join data yang akan ditampilkan hanyalah data yang mempunyai pasangan saja, maksudnya ialah data pada table tidak mempunyai sebuah kesamaan maka data tidak akan ditampilkan.

panjang ya deskripsinya, simpelnya itu

menampilkan data-data yang mempunyai nilai sama antara id_kelas pada table kelas dan id_kelas pada table ruang. Yang artinya data tersebut sanggup dipasangkan.

Selanjutnya kita berguru Left Join. 
 
Silahkan diperhatikan query pada gambar diatas. Kaprikornus apa itu left join?

LEFT JOIN, fungsi dari left join hampir sama dengan inner join dan right join, namun pada LEFT JOIN kebalikan dari RIGHT JOIN, jikalau pada right join akan menciptakan sebuah parameter di sebelah kanan namun pada left join akan menciptakan sebuah parameter dari table sebelah kiri, dan jikalau ada data atau record yang kosong atau tidak berelasi maka akan berisi NULL di sebelah kanan.

panjang ya deskripsinya, simpelnya itu

LEFT JOIN akan menampilkan data-data yang tidak berelasi. Namun pada table kelas (table kanan), data yg tidak berelasi akan bernilai NULL.

Selanjutnya kita berguru Right Join. 

Silahkan diperhatikan query pada gambar diatas. Kaprikornus apa itu left join?

RIGHT JOIN, fungsi dari right join hampir sama dengan inner join namun pada right join akan menciptakan sebuah parameter pada sebelah kanan jikalau data pada table terdapat data atau record yang kosong atau tidak berelasi maka akan berisi NULL.

panjang ya deskripsinya, simpelnya itu

RIGHT JOIN akan menampilkan data-data yang tidak berelasi. Namun kebalikan dari LEFT JOIN, pada table ruang (table kanan), data yg tidak berelasi akan bernilai NULL.


Selanjutnya kita berguru Full Join. 


Perintah FULL JOIN tidak sanggup dipakai pada database MySQL. Ketika diketikkan query akan muncul ibarat gambar diatas. solusinya kita memakai komplemen perintah union.


Silahkan diperhatikan query pada gambar diatas. Kaprikornus apa itu Full join?
FULL JOIN, fungsi dari full join hampir sama dengan inner join, right join, dan left join, namun pada FULL JOIN campuran dari RIGHT JOIN dan FULL JOIN, jikalau pada right join akan menciptakan sebuah parameter di sebelah kanan dan  pada left join akan menciptakan sebuah parameter dari table sebelah kiri, maka full join menciptakan sebuah parameter pada kanan dan kiri. Jika ada data atau record yang kosong atau tidak berelasi maka akan berisi NULL di sebelah kanan dan disebelah kiri.

panjang ya deskripsinya, simpelnya itu

FULL JOIN akan menampilkan data-data yang tidak berelasi. Namun pada table kelas (table kanan) dan tabel ruang (tabel kiri) data yg tidak berelasi akan bernilai NULL.

bagaimana tambah pusing atau tambah bersemangat menciptakan query?
sebenarnya penggunaan semua join tidak terlalu dipersoalkan apakah ingin memakai INNER JOIN, LEFT JOIN, RIGHT JOIN dan FULL JOIN. Intinya gunakan sesuai kebutuhan dan jangan lupa untuk sering mencoba dan terus menemukan hal-hal gres dalam membangun sebuah sistem informasi. 


Terimakasih, Semoga bermanfaat.  


Minggu, 07 April 2019

Perbedaan Inner Join, Left Join, Right Join, Dan Full Join Pada Mysql

Pagi yang cerah untuk menulis tutorial kali ini. Share kali ini wacana pengetahuan mengenai database mysql atau MariaDB. Pada tutorial ini akan dibahas perbedaan perintah MySQL LEFT JOIN, RIGHT JOIN, INNER JOIN dan FULL JOIN. Untuk fungsinya niscaya kalian sudah paham kalau belum niscaya tidur waktu dikelas. Perintah JOIN dalam SQL dipakai untuk menampilkan data pada table yang saling berelasi atau tanpa berelasi tapi berafiliasi . Artinya kita sanggup menampilkan data dalam beberapa table dengan melihat ada kesamaan antar tabel walau ada entitas yang berbeda namun isinya sanggup kita hubungkan. Penjelasan lebih detail sanggup ditanyakan dikelas matakuliah masing-masing ya. Suapaya tidak kelamaan pusingnya, kini saya akan mempraktekan semuanya.
Pertama saya akan menciptakan database di terminal (kalau memakai Linux atau Mac, kalau Windows namanya CMD). 
*catatan perintah yang dilakukan khusus linux dengan LAMPP (XAMPP), untuk os lainnya silahkan menyesuaikan.
Saya akan menciptakan database dengan nama belajarjoin ingat tanpa spasi dan aksara kecil semua:
Perintahnya sudah pernah lihatkan? , baca-baca ulang dan ingat-ingat waktu dikelas ya.
Selanjutnya saya akan menciptakan dua tabel, yang dipakai untuk praktek join. tabel yang dibentuk ialah tabel kelas dan tabel ruang
Perintahnya dasar ibarat ini niscaya sudah hafal, kalau belum ya kebangetan, selalu saya ingatkan lagi baca-baca ulang dan ingat-ingat waktu dikelas ya.
sengaja saya buat 2 tabel dan sedikit entitas, biar pemahaman kalian lebih mudah, jikalau ingin lebih banyak tabel dan entitas ya harus sanggup dulu dari yang kecil. bertahap lama-lama jadi bukit kan?



Selanjutnya kita isi data pada kedua tabel, jangan banyak-banyak ya cukup 5 data pada tabel kelas dan 6 pada tabel ruang. isiannya disamakan dengan gambar diatas ya. selanjutnya cek isi pada kedua tabel:

Selanjutnya kita berguru Join yang pertama ialah inner join.


Silahkan diperhatikan query pada gambar diatas. Kaprikornus apa itu inner join?

INNER JOIN ialah sebuah perintah yang dipakai untuk menampilkan sebuah data atau record dengan menghubungkan dua table atau lebih dalam satu perintah, pada perintah inner join data yang akan ditampilkan hanyalah data yang mempunyai pasangan saja, maksudnya ialah data pada table tidak mempunyai sebuah kesamaan maka data tidak akan ditampilkan.

panjang ya deskripsinya, simpelnya itu

menampilkan data-data yang mempunyai nilai sama antara id_kelas pada table kelas dan id_kelas pada table ruang. Yang artinya data tersebut sanggup dipasangkan.

Selanjutnya kita berguru Left Join. 
 
Silahkan diperhatikan query pada gambar diatas. Kaprikornus apa itu left join?

LEFT JOIN, fungsi dari left join hampir sama dengan inner join dan right join, namun pada LEFT JOIN kebalikan dari RIGHT JOIN, jikalau pada right join akan menciptakan sebuah parameter di sebelah kanan namun pada left join akan menciptakan sebuah parameter dari table sebelah kiri, dan jikalau ada data atau record yang kosong atau tidak berelasi maka akan berisi NULL di sebelah kanan.

panjang ya deskripsinya, simpelnya itu

LEFT JOIN akan menampilkan data-data yang tidak berelasi. Namun pada table kelas (table kanan), data yg tidak berelasi akan bernilai NULL.

Selanjutnya kita berguru Right Join. 

Silahkan diperhatikan query pada gambar diatas. Kaprikornus apa itu left join?

RIGHT JOIN, fungsi dari right join hampir sama dengan inner join namun pada right join akan menciptakan sebuah parameter pada sebelah kanan jikalau data pada table terdapat data atau record yang kosong atau tidak berelasi maka akan berisi NULL.

panjang ya deskripsinya, simpelnya itu

RIGHT JOIN akan menampilkan data-data yang tidak berelasi. Namun kebalikan dari LEFT JOIN, pada table ruang (table kanan), data yg tidak berelasi akan bernilai NULL.


Selanjutnya kita berguru Full Join. 


Perintah FULL JOIN tidak sanggup dipakai pada database MySQL. Ketika diketikkan query akan muncul ibarat gambar diatas. solusinya kita memakai komplemen perintah union.


Silahkan diperhatikan query pada gambar diatas. Kaprikornus apa itu Full join?
FULL JOIN, fungsi dari full join hampir sama dengan inner join, right join, dan left join, namun pada FULL JOIN campuran dari RIGHT JOIN dan FULL JOIN, jikalau pada right join akan menciptakan sebuah parameter di sebelah kanan dan  pada left join akan menciptakan sebuah parameter dari table sebelah kiri, maka full join menciptakan sebuah parameter pada kanan dan kiri. Jika ada data atau record yang kosong atau tidak berelasi maka akan berisi NULL di sebelah kanan dan disebelah kiri.

panjang ya deskripsinya, simpelnya itu

FULL JOIN akan menampilkan data-data yang tidak berelasi. Namun pada table kelas (table kanan) dan tabel ruang (tabel kiri) data yg tidak berelasi akan bernilai NULL.

bagaimana tambah pusing atau tambah bersemangat menciptakan query?
sebenarnya penggunaan semua join tidak terlalu dipersoalkan apakah ingin memakai INNER JOIN, LEFT JOIN, RIGHT JOIN dan FULL JOIN. Intinya gunakan sesuai kebutuhan dan jangan lupa untuk sering mencoba dan terus menemukan hal-hal gres dalam membangun sebuah sistem informasi. 


Terimakasih, Semoga bermanfaat.  


Kamis, 21 Februari 2019

Kumpulan Lengkap Query Sql Beserta Fungsinya


SQL merupakan sebuah bahasa yang dipakai untuk mengakses data dalam basis data relasional. Bahasa ini secara de facto merupakan bahasa standar yang dipakai dalam administrasi basis data relasional. Saat ini hampir semua server basis data yang ada mendukung bahasa ini untuk melaksanakan administrasi datanya.
Berikut ini kumpulan query  SQL:  1. Create Database Digunakan untuk menciptakan database baru. Syntax dasar: CREATE DATABASE database_nama Contoh:
CREATE DATABASE databaru
2. Create Table Digunakan untuk menciptakan tabel data gres dalam sebuah database. Syntax dasar: CREATE TABLE ( Column_name1 table_nama data_type Column_name2 table_nama data_type Column_name3 table_nama data_type ) Contoh:
CREATE TABLE tabeldata
( Id int, Nama varchar (255), Email varchar(50),
Kota varchar(255))
3. Select Digunakan untuk menentukan data dari table database. Syntax dasar: SELECT column_name(s) FROM table_name Atau SELECT * FROM table_name Contoh 1:
SELECT nama,email FROM tabeldata
Contoh 2:
SELECT * FROM tabeldata
4. Select Distinct Digunakan untuk menentukan data-data yang berbeda (menghilangkan duplikasi) dari sebuah table database. Syntax dasar: SELECT DISTINCT column_name(s) FROM table_name Contoh:
SELECT DISTINCT kota FROM tabeldata
5. Where Digunakan untuk memfilter data pada perintah Select Syntax dasar: SELECT column name(s) FROM table_name WHERE column_name operator value Contoh:
SELECT * FROM tabeldata WHERE kota=’Kediri’
6. Order By Digunakan untuk mengurutkan data menurut kolom (field) tertentu. Secara default, urutan tersusun secara ascending (urut kecil ke besar). Anda sanggup mengubahnya menjadi descending (urut besar ke kecil) dengan menambahkan perintah DESC. Syntax dasar: SELECT column_name(s) FROM table_name ORDER BY column_name(s) ASC|DESC Contoh 1:
SELECT * FROM tabeldata ORDER BY nama
Contoh 2:
SELECT * FROM tabeldata ORDER BY id DESC
7. Like Digunakan bersama dengan perintah Where, untuk proses pencarian data dengan spesifikasi tertentu. Syntax dasar: SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern Contoh 1:
SELECT * FROM tabeldata WHERE nama LIKE ‘z%’
Keterangan : Contoh di atas dipakai untuk pencarian menurut kolom nama yang berhuruf depan “z”. Contoh 2:
SELECT * FROM tabeldata WHERE nama LIKE ‘z%’
Keterangan : Contoh di atas dipakai untuk pencarian menurut kolom nama yang berhuruf belakang “z”.  8. In Digunakan untuk pencarian data memakai lebih dari satu filter pada perintah Where. Syntax dasar : SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2, . . .) Contoh:
SELECT * FROM tabeldata WHERE kota IN (‘kediri’,’malang’)
9. Between Digunakan untuk menentukan jangkauan pencarian. Syntax dasar: SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2 Contoh :
SELECT * FROM tabeldata WHERE id BETWEEN 15 and 45
Keterangan : Contoh di atas dipakai untuk mencari data yang mempunyai nomor id antara 15 dan 45.  10.  Insert Into Digunakan untuk menambahkan data gres di tabel database. Syntax dasar : INSERT INTO table_name VALUES (value1,value2,value3, . . .) Atau INSERT INTO table_name (column1,column2,column3, . . .) VALUES (value1,value2,value3, . . .) Contoh 1:
INSERT INTO tabeldata VALUES (1,’redaksi’,’redaksi@kuliahkomputer.com’,’Kediri’)
Contoh 2:
INSERT INTO tabeldata (id,nama,email,kota) VALUES (1,’redaksi’,’redaksi@kuliahkomputer.com’,’Kediri’)
11.  Update Digunakan untuk mengubah/memperbarui data di tabel database. Syntax dasar: UPDATE table_name SET column1=value,column2=value, . . . WHERE some_column=some_value Contoh :
UPDATE tabeldata SET email=’redaksi@kuliahkomputer.com’, kota=’Kediri
WHERE id =1
12.  Delete Digunakan untuk menghapus data di table database. Tambahkan perintah Where untuk memfilter data-data tertentu yang akan dihapus. Jika tanpa perintah Where, maka seluruh data dalam tabel akan terhapus. Syntax dasar : DELETE FROM table_name WHERE some_column=some_value Contoh:
DELETE FROM tabeldata WHERE id=1
13.  Inner Join Digunakan untuk menghasilkan baris data dengan cara menggabungkan 2 buah tabel atau lebih memakai pasangan data yang match pada masing-masing tabel. Perintah ini sama dengan perintah join yang sering digunakan. Syntax dasar : SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON table_name1.column_name=table_name2 column-name pola :
SELECT tabeldata.nama,tabeldata.email,order.no_order
FROM tabeldata
INNER JOIN order
ON tabeldata.id=order.id
ORDER BY tabeldata.nama
14.  Left Join Digunakan untuk menghasilkan baris data dari tabel kiri (nama tabel pertama) yang tidak ada pasangan datanya pada tabel kanan (nama tabel kedua). Syntax dasar : SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON table_name1.column_name=table_name2. column_name pola :
SELECT tabeldata.nama,tabeldata.email,order.no_order
FROM tabeldata
LEFT JOIN order
ON tabeldata.id=order.id
ORDER BY tabeldata.nama
15.  Right Join Digunakan untuk menghasilkan baris data dari tabel kanan (nama tabel kedua) yang tidak ada pasangan datanya pada tabel kiri (nama tabel pertama). Syntax dasar : SELECT column_name(s) FROM table_name1 RIGHT JOIN table_name2 ON table_name1.column_name=table_name2 column_name pola :
SELECT tabeldata.nama,tabeldata.emailmorder.no_order
FROM tabeldata
RIGHT JOIN order
ON tabeldata.id=order.i
ORDER BY tabeldata.nama
16.  Full Join Digunakan untuk menghasilkan baris data kalau ada data yang sama pada salah satu tabel. Syntax dasar : SELECT column_name(s) FROM table_name1 FULL JOIN table_name2 ON table_name1.column_name=table_name2 column_name Contoh :
SELECT tabeldata.nama,tabeldata.email,order.no_order
FROM tabeldata
FULL JOIN order
ON tabeldata.id=order.id
ORDER BY tabeldata.nama
17.  Union Digunakan untuk menggabungkan hasil dari 2 atau lebih perintah Select. Syntax dasar : SELECT column_name(s)FROM table_name1 UNION column_name(s) FROM table_name2 Atau SELECT column_name(s) FROM table_name1 UNION ALL SELECT column_name(s) FROM table_name2 Contoh :
SELECT nama FROM mhs_kampus1
UNION
SELECT nama FROM mhs_kampus2
18.  Alter Table Digunakan untuk menambah, menghapus, atau mengubah kolom (field) pada tabel yang sudah ada. Syntax untuk menambah kolom : ALTAR TABLE table_name ADD column_name datatyoe Contoh :
ALTER TABLE Persons
ADD DateOfBirth date
Syntax untuk menghapus kolom : ALTER TABLE table_name DROP COLUMN column_name Contoh :
ALTER TABLE Persons
DROP COLUMN DateOfBirth
Syntax untuk mengubah kolom : ALTER TABLE table_name ALTER TABLE clumn_name datatype Contoh :
ALTER TABLE Persons
ALTER COLUMN DateOfBirth year
19.  Now () Digunakan untuk mendapat isu waktu (tanggal dan jam ketika ini.) Syntax dasar : Now() Contoh :
SELECT NOW()
20.  Curdate Digunakan unutk mendapat isu tanggal ketika ini. Syntax dasar : Curdate() Contoh :
SELECT CURDATE()
 21.  Curtime() Digunakan untuk mendapat isu jam ketika ini. Syntax dasar : Curtime() Contoh :
SELECT CURTIME()
22.  Extract() Digunakan untuk mendapat isu bagian-bagian dari data waktu tertentu, menyerupai tahun, bulan, hari, jam, menit, dan detik tertentu. Syntax dasar : Extract(unit FROM date) Keterangan : Parameter unit sanggup berupa : • MICROSECOND • SECOND • MINUTE • HOUR • DAY • WEEK • MONTH • QUARTER • YEAR • SECOND_MICROSECOND • MINUTE_SECOND • HOUR_MICROSECOND • HOUR_SECOND • HOUR_MINUTE • DAY_MICROSECOND • DAY_SECOND • DAY_MINUTE • DAY_HOUR • YEAR_MONTH Contoh :
SELECT EXTRAXT (YEAR FROM tglorder( AS Th_Order, EXTRACT (MONTH FROM tglorder) AS Bulan_Order,EXTRACT (FAY FROM tglorder AS Hari_Order,
FROM order
23.  Date_Add() dan Date_Sub() Fungsi Date_Add() dipakai unutk menambahkan interval waktu tertentu pada sebuah tanggal, sedangkan fungsi Date_Sub() dipakai untuk pengurangan sebuah tanggal dengan interval tertentu. Syntax dasar : DATE_ADD (date,INTERVAL expr type) DATE_SUB (date,INTERVAL expr type) Keterangan : Tipe data parameter INTERVAL sanggup berupa : • MICROSECOND • SECOND • MINUTE • HOUR • DAY • WEEK • MONTH • QUARTER • YEAR • SECOND_MICROSECOND • MINUTE_MICROSECOND • MINUTE_SECOND • HOUR_MICROSEDOND • HOUR_SECOND • HOUR_MINUTE • DAY_MICROSECOND • DAY_SECOND • DAY_MINUTE • DAY_HOUR • YEAR_MONTH Contoh 1:
SELECT id,DATE_ADD (tglorder,INTERVAL 30 DAY)
AS Waktu_pembayaran
FROM order
Contoh 2:
SELECT id,DATE_SUB(tglorder,INTERVAL 5 DAY)
AS Pengurangan_Waktu
FROM order
24.  DateDiff() Digunakan untuk mendapat isu waktu di antara 2 buah tanggal. Syntax dasar : DATEIFF(date1,date2) Contoh :
SELECT DATEIFF(‘2010-06-30’,’2010-06-29’)
AS Selisih_waktu
25.  Date_Format() Digunakan untuk menampilkan isu jam dan tanggal dengan format tertentu. Syntax dasar : DATE_FORMAT(date,format) Keterangan : Parameter format sanggup berupa : • %a, nama hari yang disingkat • %b, nama bulan yang disingkat • %c, bulan (numerik) • %D hari dalam sebulan dengan format English • %d, hari dalam sebulan (numerik 00-31) • %e, hari dalam sebulan (numerik 0-31) • %f, micro detik • %H, jam (00-23) • %h, jam (01-12) • %I, jam (01-12) • %i, menit (00-59) • %j, hari dalam setahun (001-366) • %k, jam (0-23) • %l, jam (1-12) • %M, nama bulan • %m, bulan (numerik 00-12) • %p, AM atau PM • %r, waktu jam dalam format 12 jam (hh:mm:ss AM or PM) • %S, detik (00-59) • %s, detik (00-59) • %T, waktu jam dalam format 24 jam (hh:mm:ss) • %U, ahad (00-53) dimana Sunday sebagai hari pertama dalam seminggu • %u, ahad (00-53) dimana Monday sebagai hari pertama dalam seminggu • %W, nama hari kerja • %w, hari dalam seminggu (0=Sunday, 6=Saturday) • %X, tahun dalam seminggu dimana Sunday sebagai hari pertama dalam seminggu (4 digits) dipakai dengan %V • %x, tahun dalam seminggu di mana Monday sebagai hari pertama dalam seminggu (4 digits) dipakai dengan %v • %Y, tahun 4 digit • %y, tahun 2 digit Contoh :
DATA_FORMAT (NOW(),’%b %d %Y %h : %i %p’)
DATE_FORMAT (NOW(),’%m-%d-%Y’)
DATE_FORMAT (NOW(),’%d %b %Y’)
DATE_FORMAT (NOW(),’%d %b %Y %T : %f’)
26.  Drop Table Digunakan untuk menghapus tabel beserta seluruh datanya. Syntax dasar : DROP TABLE table_name Contoh :
DROP TABLE mhs
27.  Drop Database() Digunakan untuk menghapus database. Syntax dasar :
DROP DATABASE database_name
28.  AVG() Digunakan untuk menghitung nilai-rata-rata dari suatu data. Syntax dasar : SELECT  AVG (column_name) FROM table_name Contoh :
SELECT AVG(harga) AS Harga_rata2FROM order
29.  Count() Digunakan untuk menghitung jumlah (cacah) suatu data. Syntax dasar : SELECT COUNT (column_name) FROM table_name Contoh :
SELECT COUNT(id) AS Jumlah_tamu FROM tabeldata
30.  Max() Digunakan untuk mendapat nilai terbesar dari data-data yang ada. Syntax dasar : SELECT MAX (column_name) FROM table_name Contoh :
SELECT MAX(harga) AS Harga_termahal FROM order
31.  Min() Digunakan untuk mendapat nilai terkecil dari data-data yang ada. Syntax dasar : SELECT MIN (column_name) FROM table_name Contoh:
SELECT MIN(harga) AS Harga_termurah FROM order
32.  Sum() Digunakan untuk mendapat nilai total penjumlahan dari data-data yang ada. Syntax dasar : SELECT SUM (column_name) FROM table_name Contoh :
SELECT SUM(harga) AS Harga_total FROM order
33.  Group By() Digunakan untuk mengelompokkan data dengan kriteria tertentu. Syntax dasar : SELECT column_name,aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name Contoh :
SELECT nama_customer,SUM(harga) FROM order GROUP BY nama_customer
34.  Having() Digunakan untuk memfilter data dengan fungsi tertentu. Syntax dasar : SELECT column_name,aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name HAVING aggregate_function(column_name) operator value Contoh :
SELECT nama_customer,SUM(harga) FROM order
WHERE nama_customer=’Rico’ OR nama_customer=’Bastian’
GROUP BY nama_customer
HAVING SUM (harga)>125000
35.  Ucase() Digunakan untuk mengubah abjad pada data tertentu menjadi abjad besar. Syntax dasar : SELECT UCASE (column_name) FROM table_name Contoh :
SELECT UCASE(nama) as Nama FROM tabeldata
36.  Lcase() Digunakan untuk mengubah abjad pada data tertentu menjadi abjad kecil. Syntax dasar : SELECT LCASE (column_name) FROM table_name Contoh :
SELECT LCASE(nama) as Nama FROM tabeldata
37.  Mid() Digunakan untuk mengambil beberapa karakter dari field teks. Syntax dasar: SELECT MID(column_name,start[,length]) FROM table_name Contoh:
SELECT MID (kota,1,4) as singkatan_kota FROM tabeldata
38.  Len() Digunakan unutk mendapat isu jumlah karakter dari field teks. Syntax dasar: SELECT LEN (column_name) FROM table_name Contoh:
SELECT LEN(nama) as panjang_nama FROM tabeldata
39.  Round() Digunakan untuk pembuatan bilangan pecahan. Syntax dasar: SELECT ROUND (column_name,decimals) FROM table_name Contoh:
SELECT no_mhs, ROUND (nilai,0) as nilai_bulat FROM tabeldata

Semoga bermanfaat

Rabu, 20 Februari 2019

Kumpulan Lengkap Query Sql Beserta Fungsinya


SQL merupakan sebuah bahasa yang dipakai untuk mengakses data dalam basis data relasional. Bahasa ini secara de facto merupakan bahasa standar yang dipakai dalam administrasi basis data relasional. Saat ini hampir semua server basis data yang ada mendukung bahasa ini untuk melaksanakan administrasi datanya.
Berikut ini kumpulan query  SQL:  1. Create Database Digunakan untuk menciptakan database baru. Syntax dasar: CREATE DATABASE database_nama Contoh:
CREATE DATABASE databaru
2. Create Table Digunakan untuk menciptakan tabel data gres dalam sebuah database. Syntax dasar: CREATE TABLE ( Column_name1 table_nama data_type Column_name2 table_nama data_type Column_name3 table_nama data_type ) Contoh:
CREATE TABLE tabeldata
( Id int, Nama varchar (255), Email varchar(50),
Kota varchar(255))
3. Select Digunakan untuk menentukan data dari table database. Syntax dasar: SELECT column_name(s) FROM table_name Atau SELECT * FROM table_name Contoh 1:
SELECT nama,email FROM tabeldata
Contoh 2:
SELECT * FROM tabeldata
4. Select Distinct Digunakan untuk menentukan data-data yang berbeda (menghilangkan duplikasi) dari sebuah table database. Syntax dasar: SELECT DISTINCT column_name(s) FROM table_name Contoh:
SELECT DISTINCT kota FROM tabeldata
5. Where Digunakan untuk memfilter data pada perintah Select Syntax dasar: SELECT column name(s) FROM table_name WHERE column_name operator value Contoh:
SELECT * FROM tabeldata WHERE kota=’Kediri’
6. Order By Digunakan untuk mengurutkan data menurut kolom (field) tertentu. Secara default, urutan tersusun secara ascending (urut kecil ke besar). Anda sanggup mengubahnya menjadi descending (urut besar ke kecil) dengan menambahkan perintah DESC. Syntax dasar: SELECT column_name(s) FROM table_name ORDER BY column_name(s) ASC|DESC Contoh 1:
SELECT * FROM tabeldata ORDER BY nama
Contoh 2:
SELECT * FROM tabeldata ORDER BY id DESC
7. Like Digunakan bersama dengan perintah Where, untuk proses pencarian data dengan spesifikasi tertentu. Syntax dasar: SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern Contoh 1:
SELECT * FROM tabeldata WHERE nama LIKE ‘z%’
Keterangan : Contoh di atas dipakai untuk pencarian menurut kolom nama yang berhuruf depan “z”. Contoh 2:
SELECT * FROM tabeldata WHERE nama LIKE ‘z%’
Keterangan : Contoh di atas dipakai untuk pencarian menurut kolom nama yang berhuruf belakang “z”.  8. In Digunakan untuk pencarian data memakai lebih dari satu filter pada perintah Where. Syntax dasar : SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2, . . .) Contoh:
SELECT * FROM tabeldata WHERE kota IN (‘kediri’,’malang’)
9. Between Digunakan untuk menentukan jangkauan pencarian. Syntax dasar: SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2 Contoh :
SELECT * FROM tabeldata WHERE id BETWEEN 15 and 45
Keterangan : Contoh di atas dipakai untuk mencari data yang mempunyai nomor id antara 15 dan 45.  10.  Insert Into Digunakan untuk menambahkan data gres di tabel database. Syntax dasar : INSERT INTO table_name VALUES (value1,value2,value3, . . .) Atau INSERT INTO table_name (column1,column2,column3, . . .) VALUES (value1,value2,value3, . . .) Contoh 1:
INSERT INTO tabeldata VALUES (1,’redaksi’,’redaksi@kuliahkomputer.com’,’Kediri’)
Contoh 2:
INSERT INTO tabeldata (id,nama,email,kota) VALUES (1,’redaksi’,’redaksi@kuliahkomputer.com’,’Kediri’)
11.  Update Digunakan untuk mengubah/memperbarui data di tabel database. Syntax dasar: UPDATE table_name SET column1=value,column2=value, . . . WHERE some_column=some_value Contoh :
UPDATE tabeldata SET email=’redaksi@kuliahkomputer.com’, kota=’Kediri
WHERE id =1
12.  Delete Digunakan untuk menghapus data di table database. Tambahkan perintah Where untuk memfilter data-data tertentu yang akan dihapus. Jika tanpa perintah Where, maka seluruh data dalam tabel akan terhapus. Syntax dasar : DELETE FROM table_name WHERE some_column=some_value Contoh:
DELETE FROM tabeldata WHERE id=1
13.  Inner Join Digunakan untuk menghasilkan baris data dengan cara menggabungkan 2 buah tabel atau lebih memakai pasangan data yang match pada masing-masing tabel. Perintah ini sama dengan perintah join yang sering digunakan. Syntax dasar : SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON table_name1.column_name=table_name2 column-name pola :
SELECT tabeldata.nama,tabeldata.email,order.no_order
FROM tabeldata
INNER JOIN order
ON tabeldata.id=order.id
ORDER BY tabeldata.nama
14.  Left Join Digunakan untuk menghasilkan baris data dari tabel kiri (nama tabel pertama) yang tidak ada pasangan datanya pada tabel kanan (nama tabel kedua). Syntax dasar : SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON table_name1.column_name=table_name2. column_name pola :
SELECT tabeldata.nama,tabeldata.email,order.no_order
FROM tabeldata
LEFT JOIN order
ON tabeldata.id=order.id
ORDER BY tabeldata.nama
15.  Right Join Digunakan untuk menghasilkan baris data dari tabel kanan (nama tabel kedua) yang tidak ada pasangan datanya pada tabel kiri (nama tabel pertama). Syntax dasar : SELECT column_name(s) FROM table_name1 RIGHT JOIN table_name2 ON table_name1.column_name=table_name2 column_name pola :
SELECT tabeldata.nama,tabeldata.emailmorder.no_order
FROM tabeldata
RIGHT JOIN order
ON tabeldata.id=order.i
ORDER BY tabeldata.nama
16.  Full Join Digunakan untuk menghasilkan baris data kalau ada data yang sama pada salah satu tabel. Syntax dasar : SELECT column_name(s) FROM table_name1 FULL JOIN table_name2 ON table_name1.column_name=table_name2 column_name Contoh :
SELECT tabeldata.nama,tabeldata.email,order.no_order
FROM tabeldata
FULL JOIN order
ON tabeldata.id=order.id
ORDER BY tabeldata.nama
17.  Union Digunakan untuk menggabungkan hasil dari 2 atau lebih perintah Select. Syntax dasar : SELECT column_name(s)FROM table_name1 UNION column_name(s) FROM table_name2 Atau SELECT column_name(s) FROM table_name1 UNION ALL SELECT column_name(s) FROM table_name2 Contoh :
SELECT nama FROM mhs_kampus1
UNION
SELECT nama FROM mhs_kampus2
18.  Alter Table Digunakan untuk menambah, menghapus, atau mengubah kolom (field) pada tabel yang sudah ada. Syntax untuk menambah kolom : ALTAR TABLE table_name ADD column_name datatyoe Contoh :
ALTER TABLE Persons
ADD DateOfBirth date
Syntax untuk menghapus kolom : ALTER TABLE table_name DROP COLUMN column_name Contoh :
ALTER TABLE Persons
DROP COLUMN DateOfBirth
Syntax untuk mengubah kolom : ALTER TABLE table_name ALTER TABLE clumn_name datatype Contoh :
ALTER TABLE Persons
ALTER COLUMN DateOfBirth year
19.  Now () Digunakan untuk mendapat isu waktu (tanggal dan jam ketika ini.) Syntax dasar : Now() Contoh :
SELECT NOW()
20.  Curdate Digunakan unutk mendapat isu tanggal ketika ini. Syntax dasar : Curdate() Contoh :
SELECT CURDATE()
 21.  Curtime() Digunakan untuk mendapat isu jam ketika ini. Syntax dasar : Curtime() Contoh :
SELECT CURTIME()
22.  Extract() Digunakan untuk mendapat isu bagian-bagian dari data waktu tertentu, menyerupai tahun, bulan, hari, jam, menit, dan detik tertentu. Syntax dasar : Extract(unit FROM date) Keterangan : Parameter unit sanggup berupa : • MICROSECOND • SECOND • MINUTE • HOUR • DAY • WEEK • MONTH • QUARTER • YEAR • SECOND_MICROSECOND • MINUTE_SECOND • HOUR_MICROSECOND • HOUR_SECOND • HOUR_MINUTE • DAY_MICROSECOND • DAY_SECOND • DAY_MINUTE • DAY_HOUR • YEAR_MONTH Contoh :
SELECT EXTRAXT (YEAR FROM tglorder( AS Th_Order, EXTRACT (MONTH FROM tglorder) AS Bulan_Order,EXTRACT (FAY FROM tglorder AS Hari_Order,
FROM order
23.  Date_Add() dan Date_Sub() Fungsi Date_Add() dipakai unutk menambahkan interval waktu tertentu pada sebuah tanggal, sedangkan fungsi Date_Sub() dipakai untuk pengurangan sebuah tanggal dengan interval tertentu. Syntax dasar : DATE_ADD (date,INTERVAL expr type) DATE_SUB (date,INTERVAL expr type) Keterangan : Tipe data parameter INTERVAL sanggup berupa : • MICROSECOND • SECOND • MINUTE • HOUR • DAY • WEEK • MONTH • QUARTER • YEAR • SECOND_MICROSECOND • MINUTE_MICROSECOND • MINUTE_SECOND • HOUR_MICROSEDOND • HOUR_SECOND • HOUR_MINUTE • DAY_MICROSECOND • DAY_SECOND • DAY_MINUTE • DAY_HOUR • YEAR_MONTH Contoh 1:
SELECT id,DATE_ADD (tglorder,INTERVAL 30 DAY)
AS Waktu_pembayaran
FROM order
Contoh 2:
SELECT id,DATE_SUB(tglorder,INTERVAL 5 DAY)
AS Pengurangan_Waktu
FROM order
24.  DateDiff() Digunakan untuk mendapat isu waktu di antara 2 buah tanggal. Syntax dasar : DATEIFF(date1,date2) Contoh :
SELECT DATEIFF(‘2010-06-30’,’2010-06-29’)
AS Selisih_waktu
25.  Date_Format() Digunakan untuk menampilkan isu jam dan tanggal dengan format tertentu. Syntax dasar : DATE_FORMAT(date,format) Keterangan : Parameter format sanggup berupa : • %a, nama hari yang disingkat • %b, nama bulan yang disingkat • %c, bulan (numerik) • %D hari dalam sebulan dengan format English • %d, hari dalam sebulan (numerik 00-31) • %e, hari dalam sebulan (numerik 0-31) • %f, micro detik • %H, jam (00-23) • %h, jam (01-12) • %I, jam (01-12) • %i, menit (00-59) • %j, hari dalam setahun (001-366) • %k, jam (0-23) • %l, jam (1-12) • %M, nama bulan • %m, bulan (numerik 00-12) • %p, AM atau PM • %r, waktu jam dalam format 12 jam (hh:mm:ss AM or PM) • %S, detik (00-59) • %s, detik (00-59) • %T, waktu jam dalam format 24 jam (hh:mm:ss) • %U, ahad (00-53) dimana Sunday sebagai hari pertama dalam seminggu • %u, ahad (00-53) dimana Monday sebagai hari pertama dalam seminggu • %W, nama hari kerja • %w, hari dalam seminggu (0=Sunday, 6=Saturday) • %X, tahun dalam seminggu dimana Sunday sebagai hari pertama dalam seminggu (4 digits) dipakai dengan %V • %x, tahun dalam seminggu di mana Monday sebagai hari pertama dalam seminggu (4 digits) dipakai dengan %v • %Y, tahun 4 digit • %y, tahun 2 digit Contoh :
DATA_FORMAT (NOW(),’%b %d %Y %h : %i %p’)
DATE_FORMAT (NOW(),’%m-%d-%Y’)
DATE_FORMAT (NOW(),’%d %b %Y’)
DATE_FORMAT (NOW(),’%d %b %Y %T : %f’)
26.  Drop Table Digunakan untuk menghapus tabel beserta seluruh datanya. Syntax dasar : DROP TABLE table_name Contoh :
DROP TABLE mhs
27.  Drop Database() Digunakan untuk menghapus database. Syntax dasar :
DROP DATABASE database_name
28.  AVG() Digunakan untuk menghitung nilai-rata-rata dari suatu data. Syntax dasar : SELECT  AVG (column_name) FROM table_name Contoh :
SELECT AVG(harga) AS Harga_rata2FROM order
29.  Count() Digunakan untuk menghitung jumlah (cacah) suatu data. Syntax dasar : SELECT COUNT (column_name) FROM table_name Contoh :
SELECT COUNT(id) AS Jumlah_tamu FROM tabeldata
30.  Max() Digunakan untuk mendapat nilai terbesar dari data-data yang ada. Syntax dasar : SELECT MAX (column_name) FROM table_name Contoh :
SELECT MAX(harga) AS Harga_termahal FROM order
31.  Min() Digunakan untuk mendapat nilai terkecil dari data-data yang ada. Syntax dasar : SELECT MIN (column_name) FROM table_name Contoh:
SELECT MIN(harga) AS Harga_termurah FROM order
32.  Sum() Digunakan untuk mendapat nilai total penjumlahan dari data-data yang ada. Syntax dasar : SELECT SUM (column_name) FROM table_name Contoh :
SELECT SUM(harga) AS Harga_total FROM order
33.  Group By() Digunakan untuk mengelompokkan data dengan kriteria tertentu. Syntax dasar : SELECT column_name,aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name Contoh :
SELECT nama_customer,SUM(harga) FROM order GROUP BY nama_customer
34.  Having() Digunakan untuk memfilter data dengan fungsi tertentu. Syntax dasar : SELECT column_name,aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name HAVING aggregate_function(column_name) operator value Contoh :
SELECT nama_customer,SUM(harga) FROM order
WHERE nama_customer=’Rico’ OR nama_customer=’Bastian’
GROUP BY nama_customer
HAVING SUM (harga)>125000
35.  Ucase() Digunakan untuk mengubah abjad pada data tertentu menjadi abjad besar. Syntax dasar : SELECT UCASE (column_name) FROM table_name Contoh :
SELECT UCASE(nama) as Nama FROM tabeldata
36.  Lcase() Digunakan untuk mengubah abjad pada data tertentu menjadi abjad kecil. Syntax dasar : SELECT LCASE (column_name) FROM table_name Contoh :
SELECT LCASE(nama) as Nama FROM tabeldata
37.  Mid() Digunakan untuk mengambil beberapa karakter dari field teks. Syntax dasar: SELECT MID(column_name,start[,length]) FROM table_name Contoh:
SELECT MID (kota,1,4) as singkatan_kota FROM tabeldata
38.  Len() Digunakan unutk mendapat isu jumlah karakter dari field teks. Syntax dasar: SELECT LEN (column_name) FROM table_name Contoh:
SELECT LEN(nama) as panjang_nama FROM tabeldata
39.  Round() Digunakan untuk pembuatan bilangan pecahan. Syntax dasar: SELECT ROUND (column_name,decimals) FROM table_name Contoh:
SELECT no_mhs, ROUND (nilai,0) as nilai_bulat FROM tabeldata

Semoga bermanfaat