例如,对于学习SQL只是陌生的,只是想知道索引如何工作(主键以粗体显示:]
查询:
SELECT
r.roomNo, r.type, r.price
FROM
Room r,
Booking b, Hotel h
WHERE
r.roomNo = b.roomNo
AND b.hotelNo = h.hotelNo
AND h.hotelName = "Hilton"
AND r.price > 200
有人可以解释我将如何使用任何索引来提高查询性能吗?我当时只是想按价格对它进行排序,这样SQL Server不必手动检查每一行,但是还应该建立其他索引吗?另外,主键是否总是聚集索引?
我不会直接回答您的问题,但是会尝试给出一个总体思路,以便您可以根据应用程序的用例(可能会有所不同)来提高数据库查询性能:
where
子句之后的索引顺序,否则结果将对db产生负面影响。有关其他注释,您可以检查此链接What columns generally make good indexes?
快乐索引!