Cluster pointer to foreign key VS Primary key

Table Structure (SalesPersonProduct)

SalesPersonProductId INT (PK, Clustered)   
SalesPersonId        INT (FK - non-unique - Nullable) 
ProductId            INT (FK - non-unique - Nullable)
AreaId               INT  (Not Null)
DistributionType     INT  (Not Null)
ItemOrder            INT  (Not Null)
ItemSize             INT  (Not Null)

Scenario: SalesPersonId is not unique; in fact, this column may have 70 - 80 duplicates. However, this is the only column used for reading and joining and currently does not have an index.

SalesPersonProductId is just used as a PC for reference, updates for this table are processed through a PC, but are very rare. Neither PK nor SalesPersonId will be updated after adding a row to the table.

Question:
 Suppose I cannot make any changes to the table structure or related tables. Would I be better at servicing changing an existing PC to a non-clustered index and adding SalesPersonId as a clustered index? OR just adding SalesPersonId as a standard non-clustered index?

I know that behind the scenes many unique values ​​will get unique identifiers, however this column is used for almost all reads, and I expect this to provide better performance, but due to the extra bytes, they are now used to preserve "uniqueness" in this new cluster index .

+4
1

.

i), , where clause.if SalesPersonId, CI, SalesPersonId, productid CI.

ii) , Seletivity of Index

https://www.google.co.in/webhp?sourceid=chrome-instant&rlz=1C1CHMO_enIN556IN556&ion=1&espv=2&ie=UTF-8#q=how+to+find+selectivity+of+an+index

0

Source: https://habr.com/ru/post/1673309/


All Articles