Tôi đã xem qua cách viết các truy vấn theo những cách differnt như hình dưới đây Type-Imà truy vấn là tốt hơn và hiệu quả - mysql
SELECT JS.JobseekerID
, JS.FirstName
, JS.LastName
, JS.Currency
, JS.AccountRegDate
, JS.LastUpdated
, JS.NoticePeriod
, JS.Availability
, C.CountryName
, S.SalaryAmount
, DD.DisciplineName
, DT.DegreeLevel
FROM Jobseekers JS
INNER
JOIN Countries C
ON JS.CountryID = C.CountryID
INNER
JOIN SalaryBracket S
ON JS.MinSalaryID = S.SalaryID
INNER
JOIN DegreeDisciplines DD
ON JS.DegreeDisciplineID = DD.DisciplineID
INNER
JOIN DegreeType DT
ON JS.DegreeTypeID = DT.DegreeTypeID
WHERE
JS.ShowCV = 'Yes'
Type-II
SELECT JS.JobseekerID
, JS.FirstName
, JS.LastName
, JS.Currency
, JS.AccountRegDate
, JS.LastUpdated
, JS.NoticePeriod
, JS.Availability
, C.CountryName
, S.SalaryAmount
, DD.DisciplineName
, DT.DegreeLevel
FROM Jobseekers JS, Countries C, SalaryBracket S, DegreeDisciplines DD
, DegreeType DT
WHERE
JS.CountryID = C.CountryID
AND JS.MinSalaryID = S.SalaryID
AND JS.DegreeDisciplineID = DD.DisciplineID
AND JS.DegreeTypeID = DT.DegreeTypeID
AND JS.ShowCV = 'Yes'
Tôi sử dụng cơ sở dữ liệu Mysql
Cả hai hoạt động thực sự tốt, Nhưng tôi tự hỏi
- cách tốt nhất để sử dụng mọi lúc cho mọi tình huống?
- Hiệu suất khôn ngoan tốt hơn? (Hãy nói cơ sở dữ liệu dưới dạng hàng triệu bản ghi)
- Bất kỳ ưu điểm nào vượt trội hơn?
- Có công cụ nào để tôi có thể kiểm tra truy vấn nào tốt hơn không?
Cảm ơn trước
chỉnh sửa: Scorpi0 đề cập đến nó khá tốt, hãy nhớ xem SO-link của mình – DrColossos
nop, DBMS phát hiện tham gia bên trong, nó không thực hiện kết nối chéo –
hmm, tôi nghĩ rằng tôi đọc nó ở đâu đó trong các diễn đàn MySQL, nhưng bạn có thể đúng về nó. Có lẽ tôi có thể tìm thấy các articlem nhờ chỉ ra mặc dù! – DrColossos