Archive

Posts Tagged ‘mysql’

Tips buat atasin LIMIT di subquery

August 4th, 2009

Bagi yang sering otak-atik MySQL dan bermain-main dengan subquery pasti pernah ketemu dengan pesan error ini dech.

This version of MySQL doesn’t yet support ‘LIMIT & IN/ALL/ANY/SOME subquery’

Tadi kebetulan ada temen saya yang tanya. Eh Gimana sih keluarin data 5 tertinggi dari 50 data yang gue random? Pertama gue jawab-in bahwa query nya seperti ini

SELECT * FROM a WHERE a_id IN (
SELECT a_id FROM a ORDER BY RAND() LIMIT 50
) ORDER BY a_value DESC LIMIT 5

Terus gue bilang, bahwa “saat ini versi MySQL belom ada yang bisa begitu”. Terus setelah dia cari2, rupanya bisa diakal2in seperti ini :

SELECT * FROM (
SELECT * FROM a ORDER BY RAND() LIMIT 50
) ORDER BY t_value DESC LIMIT 5

Semoga membantu.

Credits goes to @xtian

Share

programming

Mysql di ubuntu sangat lambat

September 4th, 2008

Waktu install XAMPP di ubuntu server berasa banget kalo mysql itu di connect dari local cepet. Tapi begitu di connect dari Windows lambaaaaaaaat banget. Butuh sekitar 10 detik buat bisa jalan. Lama banget cari solusi buat ini tapi engga pernah ketemu.

Akhirnya kemaren itu lagi isenk nyari lagi ketemu link ini :

http://ubuntuforums.org/archive/index.php/t-315578.html

Dijelaskan di situ bahwa sebenernya lambat karena reverse-dns-lookup. Jadi solusi nya ada 2.

1. Masukan semua host anda ke /etc/hosts
2. ketik “skip-name-resolve” di my.cnf lalu di save, dan restart Mysql anda. Tapi dengan cara ini, mysql nya tidak bisa lagi mengenali host, jadi semuanya harus pake IP.

Share

linux ,

Menghapus query history pada mysql

November 17th, 2007

Pada saat anda mengetik perintah SQL pada MySQL command-line di linux, perintah tersebut akan tertinggal di sana. Tekan tombol atas untuk melihat list perintah apa saja yang anda (atau orang lain dengan login yang sama) ketik sebelumnya.

Jika anda baru saja mengquery seseuatu yang tidak ingin orang lain lihat, tentunya anda tidak ingin log ini tertinggal. Anda bisa dengan mudah menghapus list ini dengan menghapus file .mysql_history yang terletak di home dengan perintah

rm ~/.mysql_history

Atau jika anda tidak ingin sama sekali untuk mempunyai log, anda bisa mengarahkan mysql_history itu ke /dev/null dengan cara menlinknya. Jangan lupa hapus dulu mysql_history.

ln -s /dev/null .mysql_history

Semoga membantu.

Share

programming , ,

Switch to our mobile site