[MySQL] Cara Melakukan Pencarian Like IN atau Multi Like dalam Query

Untuk melakukan pencarian like yang multi umumnya seperti ini:

SELECT * FROM `jobposition` where name like ‘%supervisor%’ or name like ‘%manager%’ or name like ‘%director%’ or name like ‘%partner%’

Ternyata bisa disimple kan dengan :

SELECT * FROM `jobposition` where name REGEXP  ‘supervisor|manager|director||partner’

 

Referensi:

https://stackoverflow.com/questions/4172195/mysql-like-multiple-values

https://forums.mysql.com/read.php?10,392332,392950#msg-392950

[MySQL] Contoh Penggunaan If Else di Query MySQL

 

SELECT employees.fullname Fullname, departement.name Departement, jobposition.name Position, overtime.duration, overtimeplan.id,

IF(overtimeplan.id != NULL,    ‘planned’,       ‘not planned’    ) AS isplanned 

FROM `overtime`inner join net_hrd.employees on overtime.employees_id=employees.id

inner join net_hrd.departement on employees.departement_id = departement.id

inner join net_hrd.jobposition on employees.jobposition_id = jobposition.id

LEFT JOIN overtimeplan on overtime.employees_id=overtimeplan.employees_id and overtime.date=overtimeplan.datewhere overtime.date>=’2018-01-01′

 

Referensi :

https://stackoverflow.com/questions/8763310/how-do-write-if-else-statement-in-a-mysql-query

http://www.easysolutionweb.com/mysql-tutorials/how-to-use-if-and-else-in-mysql

MySQL : Cara Mendapatkan Hari ini dan Kemarin dalam Query

Cara simple untuk mendapatkan Hari ini dalam MySQL adalah

SELECT CURRENT_DATE()

atau

SELECT CURDATE()

maka akan menghasilkan dalam bentuk format yyyy-mm-dd, semisal

2017-11-29

Gambar query saya :

CURDATE

Mendapatkan Hari kemarin

Untuk mendapatkan hari kemarin menggunakan :

SELECT SUBDATE(CURDATE(), 1)

maka akan menghasilkan :

2017-11-28

Gambar Query :

subdate

Mengenai fungsi SUBDATE adalah untuk mengurangi hari, bisa dipakai mengurangi hari berapapun, misal seminggu ya kurangi 7. contoh :

seminggu

 

Referensi :

https://www.w3schools.com/sql/func_mysql_curdate.asp

https://stackoverflow.com/questions/7146828/mysql-selecting-yesterdays-date

 

Cara Convert String ke Date MySQL

Untuk convert dari tipe data String ke Date di MySQL maka bisa menggunakan syntax di bawah ini :

STR_TO_DATE

Contoh :

STR_TO_DATE(’12/31/2011′, ‘%m/%d/%Y’)

Contoh query di table:

SELECT STR_TO_DATE(kolom_tanggal, ‘%m/%d/%Y’) FROM table

Maka hasilnya akan menjadi format :

2016-11-30

Adapun settingan apakah %m/%d/%Y ataukah %d/%m/%Y kita sesuaikan dengan susunan tanggal yang saat itu sebagai string , apakah tanggal dulu ataukan bulan dulu.

 

Referensi :

http://stackoverflow.com/questions/5201383/how-to-convert-a-string-to-date-in-mysql

 

MySQL : Query Cara Mencari Record yang double atau lebih dari satu dalam table

Untuk mencari record yang double atau lebih dari satu di dalam suatu table bisa menggunakan query sebagai berikut :

SELECT ip_address, COUNT( ip_address )
FROM `visitor_log`
GROUP BY ip_address
HAVING COUNT( ip_address ) >1

ip_address adalah contoh kolom yang unique yang ingin kita cari double nya , sedangkan visitor_log adalah contoh table nya.

Referensi :

http://www.w3schools.com/sql/sql_having.asp

 

Error MySQL : ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)

Untuk mengatasi error :

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

Silakan buka file my.cnf di

sudo nano /etc/mysql/my.cnf

cari bind-address dan ubah menjadi sebagai berikut  :

bind-address 127.0.0.1

Kalau masih tidak bisa

coba ubah  settingan mysqld dan client menjadi :

[mysqld]
datadir=/var/lib/mysql
socket=/tmp/mysql.sock
[client]
socket=/tmp/mysql.sock

Cara yang terakhir ini berhasil di saya.

 

Referensi :

http://ubuntuforums.org/showthread.php?t=804021&page=5&s=fbe6fb422e715cc5733bbe027dc5fc48

http://forums.mysql.com/read.php?11,27769,59865

MySQL – Mencari Record double di suatu table MySQL

Apabila kita ingin mencari di suatu table apakah ada record yang double kita bisa menggunakan syntax seperti ini :

SELECT * FROM table_product GROUP BY kode  HAVING COUNT(kode) > 1

Syntax di atas untuk mencari record yang lebih dari satu dengan kunci pencarian field ‘kode’