Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Truy vấn chọn đơn giản của MySQL chậm

Với 110 triệu bản ghi, tôi không thể tưởng tượng có nhiều mục nhập có ID bản nhạc được đề cập. Tôi sẽ có các chỉ mục như

(trackID1, sim )
(trackID2, sim )
(tracksimID, sim)

và thực hiện PREQUERY thông qua công đoàn và tham gia chống lại kết quả đó

select STRAIGHT_JOIN
      TS2.*
   from
      ( select ts.tracksimID
           from tracksim ts
           where ts.trackID1 = 168123
             and ts.sim > 0.5
        UNION
        select ts.trackSimID
           from tracksim ts
           where ts.trackid2 = 168123
             and ts.sim > 0.5 
      ) PreQuery
      JOIN TrackSim TS2
         on PreQuery.TrackSimID = TS2.TrackSimID
   order by
      TS2.SIM DESC
   LIMIT 0, 100


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. NodeJS:MySQL đôi khi phát sinh lỗi ETIMEDOUT

  2. Lỗi MySQL 8.0.11 kết nối với caching_sha2_password, không thể tìm thấy mô-đun được chỉ định

  3. Cách thiết lập thực thể (học thuyết) cho chế độ xem cơ sở dữ liệu trong Symfony 2

  4. Mysql:xóa các hàng trong hai bảng có khóa ngoại

  5. MySQL năm 2018:Có gì trong 8.0 và các quan sát khác