Avatar
Angga Handoyo
Posted 21 Dec 2023
259 views
Solved

Optimasi Query Database MySQL

Database mysql optimization query

Saya punya masalah dengan performa query database. Table users dengan 100k+ records loading time-nya lambat.


        SELECT u.*, p.profile_pic 
        FROM users u 
        LEFT JOIN profiles p ON u.id = p.user_id 
        WHERE u.status = "active"
        ORDER BY u.created_at DESC;
                

Bagaimana cara mengoptimasi query ini?

Jawaban (2)
Solusi Terbaik

Untuk implementasi REST API di CodeIgniter 4, berikut beberapa tips:

  1. Routing:
    
            $routes->group("api", ["namespace" => "App\Controllers\Api"], function($routes) {
                $routes->resource("users");
                $routes->resource("products");
            });
                        
  2. JSON Response:
    
            return $this->response->setJSON([
                "status" => "success",
                "data" => $data
            ]);
                        
  3. JWT Auth: Gunakan library Firebase/JWT
Avatar Angga Handoyo • 2 tahun yang lalu
Solusi Terbaik

Beberapa cara untuk optimasi query:

  1. Tambahkan index untuk kolom yang sering digunakan dalam WHERE dan JOIN:
    
            ALTER TABLE users ADD INDEX idx_status (status);
            ALTER TABLE users ADD INDEX idx_created_at (created_at);
                        
  2. Gunakan EXPLAIN untuk analisis query
  3. Batasi hasil dengan LIMIT dan implementasi pagination
Avatar Reza Hardian • 2 tahun yang lalu
Silakan login untuk memberikan jawaban
Thread Stats
Views 259
Replies 2
Status Solved