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

MySQL JOINs được đánh giá theo thứ tự nào?

  1. SỬ DỤNG (tên trường) là cách nói viết tắt của BẬT table1.fieldname =table2.fieldname.

  2. SQL không xác định 'thứ tự' mà JOINS được thực hiện vì nó không phải là bản chất của ngôn ngữ. Rõ ràng là một thứ tự phải được chỉ định trong câu lệnh, nhưng INNER JOIN có thể được coi là giao hoán:bạn có thể liệt kê chúng theo bất kỳ thứ tự nào và bạn sẽ nhận được kết quả tương tự.

    Điều đó có nghĩa là, khi xây dựng một SELECT ... JOIN, đặc biệt là một trong những bao gồm LEFT JOIN, tôi thấy rằng có thể coi JOIN thứ ba là tham gia bảng mới với kết quả của JOIN đầu tiên, JOIN thứ tư là tham gia kết quả của JOIN thứ hai, v.v.

    Hiếm khi hơn, thứ tự được chỉ định có thể ảnh hưởng đến hành vi của trình tối ưu hóa truy vấn, do cách nó ảnh hưởng đến các khám nghiệm.

  3. Không. Theo cách lắp ráp truy vấn, nó yêu cầu cả công ty và người dùng đều có công ty, việc làm có một userid và một jobid và useraccounts có một userid. Tuy nhiên, chỉ một trong các công ty hoặc người dùng cần một userid để JOIN hoạt động.

  4. Mệnh đề WHERE đang lọc toàn bộ kết quả - tức là tất cả các cột được THAM GIA - bằng cách sử dụng một cột được cung cấp bởi bảng công việc.



  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 Integer và chỉ mục DateTime

  2. Không thể thấy giá trị trường BIT của MySQL khi sử dụng SELECT

  3. Chèn cơ sở dữ liệu php không hoạt động theo kế hoạch

  4. Nguồn dữ liệu MySQL không xuất hiện trong Visual Studio

  5. MySQL groupwise MAX () trả về kết quả không mong muốn