Hiển thị kết quả từ 1 đến 6 / 6
  1. #1
    Tham gia
    20-10-2008
    Bài viết
    84
    Like
    1
    Thanked 2 Times in 1 Post

    Cần chú ý ! Index như thế nào trong mysql

    Chào các bạn !
    Mình đang tối ưu lại cơ sở dữ liệu cho hệ thống chạy tốt hơn.
    giả sử mình có câu sql:

    Select * from table_name
    order by field1 DESC, field2 limit 0, 30

    cho mình hỏi nếu mình tạo 2 cái index là cột field1 và cột field2
    thì có phải index ở cột field2 trong trường hợp này ko có tác dụng gì đúng không
    vì các rows nó thực hiện theo index của field1 rồi.

    Trong trường hợp này thì tạo index thế nào cho hợp lý để nâng cao hiệu suất thực hiện.
    Bạn nào biết chỉ giúp mình nhé
    Quote Quote

  2. #2
    Tham gia
    30-05-2005
    Bài viết
    1,048
    Like
    35
    Thanked 127 Times in 117 Posts
    làm sao biết đc cái data bạn thiết kế như thế nào, đề nghị trình bày rõ ràng.

    PHP Code:
    Select from table_name where field2=0
    order by field1 DESC limit 0
    30 
    Quote Được gửi bởi nam0504 View Post
    Chào các bạn !
    Mình đang tối ưu lại cơ sở dữ liệu cho hệ thống chạy tốt hơn.
    giả sử mình có câu sql:






    Select * from table_name
    order by field1 DESC, field2 limit 0, 30

    cho mình hỏi nếu mình tạo 2 cái index là cột field1 và cột field2
    thì có phải index ở cột field2 trong trường hợp này ko có tác dụng gì đúng không
    vì các rows nó thực hiện theo index của field1 rồi.

    Trong trường hợp này thì tạo index thế nào cho hợp lý để nâng cao hiệu suất thực hiện.
    Bạn nào biết chỉ giúp mình nhé

  3. #3
    Tham gia
    20-10-2008
    Bài viết
    84
    Like
    1
    Thanked 2 Times in 1 Post
    Như này là cũng rõ ràng rồi mà,
    Mình muốn hỏi là trong bảng table_name thì cần tạo 2 index cho field1 và field2,
    và tạo như thế có tác dụng không trong câu lệnh order by field1 DESC, field2

  4. #4
    Tham gia
    04-03-2013
    Bài viết
    40
    Like
    10
    Thanked 4 Times in 3 Posts
    Quote Được gửi bởi nam0504 View Post
    Như này là cũng rõ ràng rồi mà,
    Mình muốn hỏi là trong bảng table_name thì cần tạo 2 index cho field1 và field2,
    và tạo như thế có tác dụng không trong câu lệnh order by field1 DESC, field2
    Nó có tác dụng bác nhé. Nhưng cái SELECT * của bác đang đi ngược lại optimize.
    Nguyên tắc optimize là chỉ SELECT những gì bác cần dùng ra thôi.

  5. #5
    Tham gia
    30-05-2005
    Bài viết
    1,048
    Like
    35
    Thanked 127 Times in 117 Posts
    đoạn mã trên của mình ko chạy à

    PHP Code:
    where field2=
    Quote Được gửi bởi nam0504 View Post
    Như này là cũng rõ ràng rồi mà,
    Mình muốn hỏi là trong bảng table_name thì cần tạo 2 index cho field1 và field2,
    và tạo như thế có tác dụng không trong câu lệnh order by field1 DESC, field2

  6. #6
    Tham gia
    20-05-2016
    Location
    Hà Nội
    Bài viết
    71
    Like
    0
    Thanked 2 Times in 2 Posts
    cái này mình không biết rồi

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •