Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Permintaan MySQL yang rumit

Anda dapat melakukan sesuatu seperti ini:

SELECT 
    t1.post_id, 
    t1.meta_value AS name, 
    t2.meta_value AS season, 
    t3.meta_value AS episode
FROM
    (
    SELECT *
    FROM the_table
    WHERE meta_key = 'name'
    ) t1
INNER JOIN
    (
    SELECT *
    FROM the_table
    WHERE meta_key = 'season'
    ) t2 ON t1.post_id = t2.post_id
INNER JOIN
    (
    SELECT *
    FROM the_table
    WHERE meta_key = 'episode'
    ) t3 ON t1.post_id = t3.post_id

Ini akan memberi Anda hasilnya:

| post_id | name       | season | episode |
-------------------------------------------
|    1    | Smallville | 1      | 1       |
|    2    | Smallville | 1      | 2       |

Dalam bentuk ini jauh lebih mudah untuk operasi apa pun.

Yang Anda butuhkan adalah menambahkan:

WHERE name = 'Smallville'
ORDER BY season, episode


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - Buat sepasang nilai unik

  2. Bagaimana cara mengetahui apakah saat menggunakan pembaruan kunci duplikat, baris dimasukkan atau diperbarui?

  3. Mengembalikan catatan dari 3 bulan terakhir hanya di MySQL

  4. 10 Pertanyaan Wawancara Database MySQL untuk Pemula dan Menengah

  5. apakah mungkin untuk akses jarak jauh ke database mysql di shared hosting?