рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдо рдФрд░ рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛рдПрдБ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ

рд╕рднреА рдкрд░рд┐рдЪрд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рджреГрд╢реНрдп рдХреБрдЫ рдорд╛рдирджрдВрдбреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдбреЗрдЯрд╛ рдХреА рдЦреЛрдЬ рдХрд░рдирд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдРрд╕реЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рд╣реИ рдЬреЛ рдкрдврд╝рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИред рд╕реЙрд░реНрдЯрд┐рдВрдЧ, рдЧреНрд░реБрдкрд┐рдВрдЧ, рдкреЗрдЬрд┐рдиреЗрд╢рди рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрд╡рд╕рд░ рднреА рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдХрд╛рд░реНрдп рддреБрдЪреНрдЫ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╣рд▓ рдХрд░рддреЗ рд╕рдордп, рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХрдИ рдЧрд▓рддрд┐рдпрд╛рдВ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рддрдм рдкреНрд░рджрд░реНрд╢рди рд╕реЗ рдЧреНрд░рд╕реНрдд рд╣реИрдВред рдЖрдЗрдП рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдорд╛рдзрд╛рдиреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рд╕рдмрд╕реЗ рдкреНрд░рднрд╛рд╡реА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рддреИрдпрд╛рд░ рдХрд░реЗрдВред

рдЫрд╡рд┐

рдкреЗрдЬрд┐рдВрдЧ рд╡рд┐рдХрд▓реНрдк # 1


рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╡рд┐рдХрд▓реНрдк рдЬреЛ рдорди рдореЗрдВ рдЖрддрд╛ рд╣реИ, рд╡рд╣ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдЕрдкрдиреЗ рд╕рдмрд╕реЗ рдХреНрд▓рд╛рд╕рд┐рдХ рд░реВрдк рдореЗрдВ рдкреГрд╖реНрдард╛рдВрдХрд┐рдд рдХрд░рддрд╛ рд╣реИред


рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдХреЛрдИ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЗрд╕ рд░реВрдк рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рджреЛ рдПрд╕рдХреНрдпреВрдПрд▓ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

  • рд╡рд░реНрддрдорд╛рди рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред
  • рдЦреЛрдЬ рдорд╛рдирджрдВрдб рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реА рдХреБрд▓ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВ - рдпрд╣ рдкреГрд╖реНрда рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рдкрд░реАрдХреНрд╖рдг рдПрдордПрд╕ SQL рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рдкрд╣рд▓реА рдХреНрд╡реЗрд░реА рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ AdventureWorks 2016 рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк ред рдЗрд╕ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП, рд╣рдо Table Sales.SalesOrderHeader рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ:

SELECT * FROM Sales.SalesOrderHeader
ORDER BY OrderDate DESC
OFFSET 0 ROWS
FETCH NEXT 50 ROWS ONLY

рдЙрдкрд░реЛрдХреНрдд рдХреНрд╡реЗрд░реА рдЕрдВрддрд┐рдо 50 рдЖрджреЗрд╢реЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдЕрдВрддрд┐рдо рддрд┐рдерд┐ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЕрд╡рд░реЛрд╣реА рдХреНрд░рдо рдореЗрдВ рдХреНрд░рдордмрджреНрдз рд╕реВрдЪреА рд╕реЗ рдкрд╣рд▓реЗ 50 рдЖрджреЗрд╢реЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧреАред

рдпрд╣ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЬрд▓реНрджреА рд╕реЗ рдЪрд▓рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдЗрдП рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЬрдирд╛ рдФрд░ I / O рдЖрдБрдХрдбрд╝реЛрдВ рдХреЛ рджреЗрдЦреЗрдВ:


Table 'SalesOrderHeader'. Scan count 1, logical reads 698, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.

рдХреНрд╡реЗрд░реА рдХреНрд░рдо рдореЗрдВ SET STATISTICS IO ON рдХрдорд╛рдВрдб рдЪрд▓рд╛рдХрд░ рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП I / O рдЖрдБрдХрдбрд╝реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЬрдирд╛ рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрд╕рд╛рдзрди-рдЧрд╣рди рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЙрди рд╕рднреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░рдирд╛ рд╣реИ, рдЬрд┐рд╕ рддрд┐рдерд┐ рддрдХ рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ред рдФрд░ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдВрдХреНрддрд┐рдпрд╛рдВ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИрдВ, "рдХрдард┐рди" рдЫрдБрдЯрд╛рдИ рд╣реЛрдЧреАред рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рд╕реЗ рдмрдЪрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреА рддрд╛рд░реАрдЦ рдореЗрдВ рд╕реВрдЪрдХрд╛рдВрдХ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╕рдВрд╕рд╛рдзрди рдХреА рдЦрдкрдд рдмрджрд▓ рдЧрдИ рд╣реИ:


Table 'SalesOrderHeader'. Scan count 1, logical reads 165, physical reads 0, read-ahead reads 5, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.

рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдпрд╣ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реЛ рдЧрдпрд╛ред рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╕рднреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛ рдЧрдпрд╛ рд╣реИ? рдЖрдЗрдП рдЙрди рдЖрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдЕрдиреБрд░реЛрдз рдмрджрд▓реЗрдВ рдЬрд╣рд╛рдВ рдорд╛рд▓ рдХреА рдХреБрд▓ рд▓рд╛рдЧрдд $ 100 рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ:

SELECT * FROM Sales.SalesOrderHeader
WHERE SubTotal > 100
ORDER BY OrderDate DESC
OFFSET 0 ROWS
FETCH NEXT 50 ROWS ONLY


Table 'SalesOrderHeader'. Scan count 1, logical reads 1081, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрдЬреАрдм рд╕реНрдерд┐рддрд┐ рд╣реИ: рдХреНрд╡реЗрд░реА рдпреЛрдЬрдирд╛ рдкрд┐рдЫрд▓реЗ рдПрдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдереЛрдбрд╝реА рдЦрд░рд╛рдм рд╣реИ, рд▓реЗрдХрд┐рди рддрд╛рд░реНрдХрд┐рдХ рд░реАрдбрд┐рдВрдЧ рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдПрдХ рдкреВрд░реНрдг рддрд╛рд▓рд┐рдХрд╛ рд╕реНрдХреИрди рдХреЗ рд╕рд╛рде рд▓рдЧрднрдЧ рджреЛрдЧреБрдиреА рд╣реИред рдПрдХ рддрд░реАрдХрд╛ рд╣реИ - рдпрджрд┐ рд╣рдо рдореМрдЬреВрджрд╛ рд╕реВрдЪрдХрд╛рдВрдХ рд╕реЗ рд╕рдордЧреНрд░ рдореВрд▓реНрдп рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдорд╛рд▓ рдХреА рдХреБрд▓ рдХреАрдордд рдХреЛ рджреВрд╕рд░реЗ рдХреНрд╖реЗрддреНрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдлрд┐рд░ рд╕реЗ рд╣рдореЗрдВ 165 рддрд╛рд░реНрдХрд┐рдХ рд░реАрдб рдорд┐рд▓рддреЗ рд╣реИрдВ:

CREATE INDEX IX_SalesOrderHeader_OrderDate_SubTotal on Sales.SalesOrderHeader(OrderDate, SubTotal);

рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреА рдЗрд╕ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЬрд╛рд░реА рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рджреЛ рдореБрдЦреНрдп рд╡рд┐рдЪрд╛рд░ рдЬреЛ рдореИрдВ рдпрд╣рд╛рдВ рд╡реНрдпрдХреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рд╡реЗ рд╣реИрдВ:

  • рдЦреЛрдЬ рдХреНрд╡реЗрд░реА рдореЗрдВ рдХреЛрдИ рдирдпрд╛ рдорд╛рдирджрдВрдб рдпрд╛ рд╕реЙрд░реНрдЯ рдХреНрд░рдо рдЬреЛрдбрд╝рдирд╛ рдЗрд╕рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЧрддрд┐ рдХреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
  • рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╣рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рдХреЗрд╡рд▓ рдПрдХ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдШрдЯрд╛рдирд╛ рд╣реИ, рдФрд░ рдЙрди рд╕рднреА рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдирд╣реАрдВ рдЬреЛ рдЦреЛрдЬ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЛ рдлрд┐рдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдРрд╕реА рдХреНрд╡реЗрд░реА рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВред

рдЕрдм рдЪрд▓рд┐рдП рджреВрд╕рд░реА рдХреНрд╡реЗрд░реА рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВ, рдЬреЛ рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рд╣реИ - рдЙрд╕ рдЦреЛрдЬ рдорд╛рдкрджрдВрдб рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд░рд┐рдХреЙрд░реНрдб рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЧрд┐рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рд╣реА рдЙрджрд╛рд╣рд░рдг рд▓реЗрдВ - $ 100 рд╕реЗ рдЕрдзрд┐рдХ рд▓рд╛рдЧрдд рд╡рд╛рд▓реЗ рдСрд░реНрдбрд░ рдвреВрдВрдврдирд╛:

SELECT COUNT(1) FROM Sales.SalesOrderHeader
WHERE SubTotal > 100

рдЙрдкрд░реНрдпреБрдХреНрдд рд╕рдВрдпреБрдХреНрдд рд╕реВрдЪрдХрд╛рдВрдХ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╣рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:


Table 'SalesOrderHeader'. Scan count 1, logical reads 698, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.

рдпрд╣ рддрдереНрдп рдХрд┐ рдХреНрд╡реЗрд░реА рдкреВрд░реЗ рд╕реВрдЪрдХрд╛рдВрдХ рд╕реЗ рдЧреБрдЬрд░рддреА рд╣реИ, рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рдмрдЯреЛрдЯрд▓ рдХреНрд╖реЗрддреНрд░ рдкрд╣рд▓реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреНрд╡реЗрд░реА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреА рд╣реИред рд╕рдмрдЯреЛрдЯрд▓ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдПрдХ рдФрд░ рд╕реВрдЪрдХрд╛рдВрдХ рдЬреЛрдбрд╝рдХрд░ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреЗрд╡рд▓ 48 рддрд╛рд░реНрдХрд┐рдХ рд░реАрдб рдорд┐рд▓рддреЗ рд╣реИрдВред

рдЖрдк рдорд╛рддреНрд░рд╛ рдХреА рдЧрд┐рдирддреА рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдХреБрдЫ рдФрд░ рдЙрджрд╛рд╣рд░рдг рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕рд╛рд░ рдПрдХ рд╣реА рд░рд╣рддрд╛ рд╣реИ: рдбреЗрдЯрд╛ рдХрд╛ рдПрдХ рдЯреБрдХрдбрд╝рд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдФрд░ рдХреБрд▓ рдорд╛рддреНрд░рд╛ рдХреА рдЧрдгрдирд╛ рдХрд░рдирд╛ рджреЛ рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЕрдиреБрд░реЛрдз рд╣реИрдВ , рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЙрдкрд╛рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЖрдкрдХреЛ рдЙрди рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рдУрдВ рдХрд╛ рд╕рдВрдпреЛрдЬрди рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рджреЛрдиреЛрдВ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИрдВред

рддрджрдиреБрд╕рд╛рд░, рдЗрд╕ рддрд░рд╣ рдХреЗ рдЦреЛрдЬ рд╕рдорд╛рдзрд╛рди рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХреНрдпрд╛ рд╡реНрдпрд╡рд╕рд╛рдп рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рд╡рд╕реНрддреБрдУрдВ рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛ рджреЗрдЦреА рдЬрд╛рдПред рдЕрдХреНрд╕рд░ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдирд╣реАрдВред рдФрд░ рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреГрд╖реНрда рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдиреЗрд╡рд┐рдЧреЗрд╢рди, рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рдВрдХреАрд░реНрдг рджрд╛рдпрд░реЗ рд╡рд╛рд▓рд╛ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреЗрдЬрд┐рдВрдЧ рдкрд░рд┐рджреГрд╢реНрдп "рдЕрдЧрд▓реЗ рдкреГрд╖реНрда рдкрд░ рдЬрд╛рдПрдВ" рдЬреИрд╕реЗ рджрд┐рдЦрддреЗ рд╣реИрдВред

рдкреЗрдЬрд┐рдВрдЧ рд╡рд┐рдХрд▓реНрдк # 2


рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдХреБрд▓ рд╡рд╕реНрддреБрдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЬрд╛рдирдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рд╣реИред рдЖрдЗрдП рдЦреЛрдЬ рдкреГрд╖реНрда рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ:


рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХреЗрд╡рд▓ рдпрд╣ рддрдереНрдп рдХрд┐ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреГрд╖реНрда рд╕рдВрдЦреНрдпрд╛рдУрдВ рдкрд░ рдЬрд╛рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЕрдм рдЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдХрд┐рддрдиреЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╕рд╡рд╛рд▓ рдЙрдарддрд╛ рд╣реИ - рдЕрдЧрд░ рдЕрдЧрд▓реЗ рдкреЗрдЬ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рд╣реИ (рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ "рдЕрдЧрд▓рд╛" рд▓рд┐рдВрдХ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП) рддреЛ рддрд╛рд▓рд┐рдХрд╛ рдХреИрд╕реЗ рдЬрд╛рдирддреА рд╣реИ?

рдЙрддреНрддрд░ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ: рдЖрдк рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдПрдХ рд░рд┐рдХреЙрд░реНрдб рдХреЛ рдШрдЯрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рддрдирд╛ рдЖрдкрдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕ "рдЕрддрд┐рд░рд┐рдХреНрдд" рд░рд┐рдХреЙрд░реНрдб рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рджрд┐рдЦрд╛рдПрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдЕрдЧрд▓рд╛ рднрд╛рдЧ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдбреЗрдЯрд╛ рдХрд╛ рдПрдХ рдкреГрд╖реНрда рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдХреНрд╡реЗрд░реА рдХреЛ рдкреВрд░рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдХрд╛рдлреА рд╕реБрдзрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред рдореЗрд░реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдПрдХ рдРрд╕рд╛ рдорд╛рдорд▓рд╛ рдерд╛ рдЬрдм рдХреБрд▓ рд░рд┐рдХреЙрд░реНрдб рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЧрд┐рдирдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рдиреЗ рд╕реЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдЙрддреНрдкрд╛рджрди рдореЗрдВ 4-5 рдЧреБрдирд╛ рддреЗрдЬреА рдЖрдИред

рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд▓рд┐рдП рдХрдИ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ: "рдмреИрдХ" рдФрд░ "рдлреЙрд░рд╡рд░реНрдб" рдХрдорд╛рдВрдб, рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, "рдЕрдзрд┐рдХ рд▓реЛрдб рдХрд░реЗрдВ" рдмрдЯрди, рдЬреЛ рдмрд╕ рдкреНрд░рджрд░реНрд╢рд┐рдд рдкрд░рд┐рдгрд╛рдореЛрдВ рдореЗрдВ рдПрдХ рдирдпрд╛ рднрд╛рдЧ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, "рдЕрдирдВрдд рд╕реНрдХреНрд░реЙрд▓рд┐рдВрдЧ", рдЬреЛ "рд▓реЛрдб рдЕрдзрд┐рдХ" рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред ", рд▓реЗрдХрд┐рди рдЕрдЧрд▓реЗ рднрд╛рдЧ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреЗрдд рд╕рднреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдЕрдВрдд рддрдХ рд╕реНрдХреНрд░реЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реИред рджреГрд╢реНрдп рд╕рдорд╛рдзрд╛рди рдЬреЛ рднреА рд╣реЛ, рдбреЗрдЯрд╛ рд╕реИрдВрдкрд▓рд┐рдВрдЧ рдХрд╛ рд╕рд┐рджреНрдзрд╛рдВрдд рдПрдХ рд╕рдорд╛рди рд╣реИред

рдкреЗрдЬрд┐рдВрдЧ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдмрд╛рд░реАрдХрд┐рдпрд╛рдВ


рдКрдкрд░ рджрд┐рдП рдЧрдП рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рд╕рднреА рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ, "рдСрдлрд╝рд╕реЗрдЯ + рдирдВрдмрд░" рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдм рдХреНрд╡реЗрд░реА рд╣реА рдмрддрд╛рддреА рд╣реИ рдХрд┐ рдкрд░рд┐рдгрд╛рдо рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдХрд┐рд╕ рдХреНрд░рдо рдореЗрдВ рдФрд░ рдХрд┐рддрдиреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╡рд╛рдкрд╕ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╣рд╕реНрддрд╛рдВрддрд░рдг рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдореИрдВ рдХрдИ рддрд░реАрдХреЛрдВ рд╕реЗ рдорд┐рд▓рд╛:

  • рдЕрдиреБрд░реЛрдзрд┐рдд рдкреГрд╖реНрда (рдкреЗрдЬрдЗрдВрдбреЗрдХреНрд╕), рдкреГрд╖реНрда рдЖрдХрд╛рд░ (рдкреЗрдЬрд╕рд╛рдЗрдЬрд╝) рдХреА рдХреНрд░рдо рд╕рдВрдЦреНрдпрд╛ред
  • рдкрд╣рд▓реЗ рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ рд▓реМрдЯрд╛рдпрд╛ рдЬрд╛рдирд╛ (startIndex), рдкрд░рд┐рдгрд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рд░рд┐рдХреЙрд░реНрдб рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ (рдЧрдгрдирд╛)ред
  • рд▓реМрдЯрд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкрд╣рд▓реЗ рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ (startIndex), рдкрд┐рдЫрд▓реЗ рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ рд▓реМрдЯрд╛рдпрд╛ рдЬрд╛рдП (рдПрдВрдбрдЗрдВрдбреЗрдХреНрд╕)ред

рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рдРрд╕рд╛ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрддрдирд╛ рдкреНрд░рд╛рдердорд┐рдХ рд╣реИ рдХрд┐ рдХреЛрдИ рдЕрдВрддрд░ рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ - рд╕рдмрд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рд╡рд┐рдХрд▓реНрдк рджреВрд╕рд░рд╛ (startIndex, count) рд╣реИред рдЗрд╕рдХреЗ рдЕрдиреЗрдХ рдХрд╛рд░рдг рд╣реИрдВ:

  • +1 , , pageIndex pageSize . , 50 . , , . ┬л+1┬╗ , , 1 51, тАФ 51 101 .. 51 pageIndex, 52 102 .. , тАФ ┬л┬╗ , .
  • рддреАрд╕рд░рд╛ рд╡рд┐рдХрд▓реНрдк рдмрд┐рд▓реНрдХреБрд▓ рднреА рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЕрднреА рднреА рдорд╛рддреНрд░рд╛ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдкрд┐рдЫрд▓реЗ рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рд╕реВрдЪрдХрд╛рдВрдХ рдирд╣реАрдВред рдПрдВрдбрдЗрдВрдбреЗрдХреНрд╕ рдФрд░ рдПрдХ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЕрдВрдХрдЧрдгрд┐рддреАрдп рдСрдкрд░реЗрд╢рди рд╕реЗ startIndex рдХреЗ рдШрдЯрд╛рд╡ рдХреЛ рдмрддрд╛рдПрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдпрд╣рд╛рдВ рдмрд╣реБрдд рд╣реА рдЕрдЪреНрдЫрд╛ рд╣реИред

рдЕрдм рд╣рдореЗрдВ "рдСрдлрд╕реЗрдЯ + рдорд╛рддреНрд░рд╛" рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреЗрдЬрд┐рдВрдЧ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рдХрдорд┐рдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:

  • рдкреНрд░рддреНрдпреЗрдХ рдЕрдЧрд▓реЗ рдкреГрд╖реНрда рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдкрд┐рдЫрд▓реЗ рдПрдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдорд╣рдВрдЧрд╛ рдФрд░ рдзреАрдорд╛ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдЕрднреА рднреА рдЦреЛрдЬ рдФрд░ рд╕реЙрд░реНрдЯ рдорд╛рдирджрдВрдб рдХреЗ рдЕрдиреБрд╕рд╛рд░ "рд╢реБрд░реБрдЖрдд рд╕реЗ" рд╕рднреА рд░рд┐рдХреЙрд░реНрдб рд╕реЗ рдЧреБрдЬрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдлрд┐рд░ рд╡рд╛рдВрдЫрд┐рдд рдЯреБрдХрдбрд╝реЗ рдкрд░ рд░реЛрдХрдирд╛ рд╣реЛрдЧрд╛ред
  • рд╕рднреА DBMS рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рднреА рдЕрдкреВрд░реНрдг рд╣реИрдВред рдЗрдирдореЗрдВ рд╕реЗ рдкрд╣рд▓реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ "рдХреАрд╕реЗрдЯ рдкреЗрдЬрд┐рдВрдЧ" рдпрд╛ "рдореЗрдХрд┐рдВрдЧ рдореЗрдердб" рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: рдПрдХ рднрд╛рдЧ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдкреГрд╖реНрда рдкрд░ рдкрд┐рдЫрд▓реЗ рд░рд┐рдХреЙрд░реНрдб рдореЗрдВ рдлрд╝реАрд▓реНрдб рдХреЗ рдорд╛рдиреЛрдВ рдХреЛ рдпрд╛рдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЕрдЧрд▓реЗ рднрд╛рдЧ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛:

SELECT * FROM Sales.SalesOrderHeader
ORDER BY OrderDate DESC
OFFSET 0 ROWS
FETCH NEXT 50 ROWS ONLY

рдФрд░ рдкрд┐рдЫрд▓реЗ рд░рд┐рдХреЙрд░реНрдб рдореЗрдВ рд╣рдореЗрдВ рдСрд░реНрдбрд░ рдХреА рддрд╛рд░реАрдЦ '2014-06-29' рдХрд╛ рдорд╛рди рдорд┐рд▓рд╛ред рдлрд┐рд░, рдЕрдЧрд▓рд╛ рдкреГрд╖реНрда рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдпрд╣ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

SELECT * FROM Sales.SalesOrderHeader
WHERE OrderDate < '2014-06-29'
ORDER BY OrderDate DESC
OFFSET 0 ROWS
FETCH NEXT 50 ROWS ONLY

рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдСрд░реНрдбрд░рдбреЗрдЯ рдПрдХ рдЧреИрд░-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдлрд╝реАрд▓реНрдб рд╣реИ, рдФрд░ рдКрдкрд░ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рд╢рд░реНрдд рдмрд╣реБрдд рд╕рд╛рд░реА рдЖрд╡рд╢реНрдпрдХ рд▓рд╛рдЗрдиреЗрдВ рдЫреЛрдбрд╝ рд╕рдХрддреА рд╣реИред рдЗрд╕ рдЕрдиреБрд░реЛрдз рдХреЛ рдЕрд╕реНрдкрд╖реНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдлрд╝реАрд▓реНрдб рдХреЛ рд╢рд░реНрдд рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ (рдорд╛рди рд▓реАрдЬрд┐рдП 75074 рдкрд╣рд▓реЗ рднрд╛рдЧ рд╕реЗ рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдХрд╛ рдЕрдВрддрд┐рдо рдореВрд▓реНрдп рд╣реИ):

SELECT * FROM Sales.SalesOrderHeader
WHERE (OrderDate = '2014-06-29' AND SalesOrderID < 75074)
   OR (OrderDate < '2014-06-29')
ORDER BY OrderDate DESC, SalesOrderID DESC
OFFSET 0 ROWS
FETCH NEXT 50 ROWS ONLY

рдпрд╣ рд╡рд┐рдХрд▓реНрдк рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЕрдиреБрдХреВрд▓рди рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╕реНрдерд┐рддрд┐ рдореЗрдВ OR рдСрдкрд░реЗрдЯрд░ рд╢рд╛рдорд┐рд▓ рд╣реИред рдпрджрд┐ рдСрд░реНрдбрд░ рдХреАрдб рдХреА рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдХрд╛ рдорд╛рди рдмрдврд╝рддрд╛ рд╣реИ, рддреЛ SalesOrderID рджреНрд╡рд╛рд░рд╛ рдХреЗрд╡рд▓ рдлрд╝рд┐рд▓реНрдЯрд░ рдЫреЛрдбрд╝рдиреЗ рд╕реЗ рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдХреЗ рдорд╛рдиреЛрдВ рдХреЗ рдмреАрдЪ рдХреЛрдИ рд╕рдЦреНрдд рд╕рд╣рд╕рдВрдмрдВрдз рдирд╣реАрдВ рд╣реИ рдФрд░ рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ - рддреЛ рдЕрдзрд┐рдХрд╛рдВрд╢ DBMS рдореЗрдВ рдЗрд╕реЗ рдЯрд╛рд▓рд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореЗрд░реЗ рд▓рд┐рдП рдЬреНрдЮрд╛рдд рдЕрдкрд╡рд╛рдж рдкреЛрд╕реНрдЯрдЧреНрд░реИрд╕рдХреНрдпреВрдПрд▓ рд╣реИ, рдЬрд╣рд╛рдВ рдЯрдкрд▓ рддреБрд▓рдирд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдорд░реНрдерд┐рдд рд╣реИ, рдФрд░ рдЙрдкрд░реЛрдХреНрдд рд╕реНрдерд┐рддрд┐ рдХреЛ "WHERE (рдСрд░реНрдбрд░рдбреЗрдЯ, рд╕реЗрд▓реНрд╕рдСрдбрд░рд┐рдб) <('2014-06-29', 75074) рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрди рджреЛ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдордЧреНрд░ рдХреБрдВрдЬреА рд╣реИ, рддреЛ рдПрдХ рд╕рдорд╛рди рдЕрдиреБрд░реЛрдз рдХрд╛рдлреА рдЖрд╕рд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рджреВрд╕рд░рд╛ рд╡реИрдХрд▓реНрдкрд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ рдЦреЛрдЬ рд╕реНрдХреНрд░реЙрд▓ рдПрдкреАрдЖрдИ рдпрд╛ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИрдХреЙрд╕реНрдореЙрд╕ рдбреАрдмреА - рдЬрдм рдбреЗрдЯрд╛ рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдПрдХ рдХреНрд╡реЗрд░реА рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рдбреЗрдЯрд╛ рдХрд╛ рдЕрдЧрд▓рд╛ рдмреИрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рдЗрд╕ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ рдЕрд╕реАрдорд┐рдд рдЬреАрд╡рдирдХрд╛рд▓ (рдХреЛрдореЛрд╕ рдбреАрдмреА рдХреЗ рд░реВрдк рдореЗрдВ) рд╣реИ, рддреЛ рдпрд╣ рдкреГрд╖реНрдареЛрдВ рдХреЗ рдмреАрдЪ рдЕрдиреБрдХреНрд░рдорд┐рдХ рд╕рдВрдХреНрд░рдордг рдХреЗ рд╕рд╛рде рдкреЗрдЬрд┐рдВрдЧ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рд╣реИ (рд╡рд┐рдХрд▓реНрдк # 2 рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред рдЗрд╕рдХреЗ рд╕рдВрднрд╛рд╡рд┐рдд рдиреБрдХрд╕рд╛рди: рд╕рднреА DBMS рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИрдВ; рдкреНрд░рд╛рдкреНрдд рдЕрдЧрд▓реЗ рдмреИрдЪ рдХреЗ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рдЬреАрд╡рдирдХрд╛рд▓ рд╕реАрдорд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдЖрдо рддреМрд░ рдкрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ (рдЬреИрд╕реЗ рдХрд┐ рдЗрд▓рд╛рд╕реНрдЯрд┐рдХ рдЦреЛрдЬ рд╕реНрдХреНрд░реЙрд▓ рдПрдкреАрдЖрдИ)ред

рдЬрдЯрд┐рд▓ рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ


рд╣рдо рдХрд╛рд░реНрдп рдХреЛ рдФрд░ рдЬрдЯрд┐рд▓ рдХрд░рддреЗ рд╣реИрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рддрдерд╛рдХрдерд┐рдд рдЦреЛрдЬ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рдСрдирд▓рд╛рдЗрди рд╕реНрдЯреЛрд░ рд╕реЗ рд╕рднреА рдХреЛ рдкрд░рд┐рдЪрд┐рдд рд╣реИред рдЖрджреЗрд╢ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЙрдкрд░реЛрдХреНрдд рдЙрджрд╛рд╣рд░рдг рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдмрд╣реБрдд рд╕рдВрдХреЗрдд рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдПрдбрд╡реЗрдВрдЪрд░ рд╡рд░реНрдХрд░реНрд╕ рд╕реЗ рдЙрддреНрдкрд╛рдж рддрд╛рд▓рд┐рдХрд╛ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░реЗрдВрдЧреЗ:


рдореБрдЦрд░ рдЦреЛрдЬ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдХреНрдпрд╛ рд╣реИ? рдЗрд╕рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд┐рд▓реНрдЯрд░ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП, рдЗрд╕ рдорд╛рдирджрдВрдб рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рд░рд┐рдХреЙрд░реНрдб рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЕрдиреНрдп рд╕рднреА рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдореЗрдВ рдЪрдпрдирд┐рдд рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ ред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рд╣рдо рдЗрд╕ рд╢реНрд░реЗрдгреА рдореЗрдВ рдмрд╛рдЗрдХреНрд╕ рд╢реНрд░реЗрдгреА рдФрд░ рд░рдВрдЧ рдмреНрд▓реИрдХ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рддрд╛рд▓рд┐рдХрд╛ рдХреЗрд╡рд▓ рдХрд╛рд▓реА рдмрд╛рдЗрдХ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧреА, рд▓реЗрдХрд┐рди рдЙрд╕реА рд╕рдордп:

  • "рд╢реНрд░реЗрдгрд┐рдпрд╛рдБ" рд╕рдореВрд╣ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдорд╛рдирджрдВрдб рдХреЗ рд▓рд┐рдП, рдХрд╛рд▓реЗ рд░рдВрдЧ рдореЗрдВ рдЗрд╕ рд╢реНрд░реЗрдгреА рдХреЗ рдЙрддреНрдкрд╛рджреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рджрд┐рдЦрд╛рдИ рдЬрд╛рдПрдЧреАред
  • рдХрд▓рд░реНрд╕ рд╕рдореВрд╣ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдорд╛рдирджрдВрдб рдХреЗ рд▓рд┐рдП, рдЙрд╕ рд░рдВрдЧ рдХреА рдмрд╛рдЗрдХ рдХреА рд╕рдВрдЦреНрдпрд╛ рджрд┐рдЦрд╛рдИ рдЬрд╛рдПрдЧреАред

рдЗрд╕ рддрд░рд╣ рдХреА рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:


рдпрджрд┐ "рд╡рд╕реНрддреНрд░" рд╢реНрд░реЗрдгреА рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдХрд╛рд▓реЗ рдХрдкрдбрд╝реЗ рднреА рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗред "рд░рдВрдЧ" рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдХрд╛рд▓реЗ рдЙрддреНрдкрд╛рджреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рднреА рдирдИ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреБрдирд░реНрдЧрдгрдирд╛ рд╣реЛрдЧреА, рдХреЗрд╡рд▓ "рд╢реНрд░реЗрдгрд┐рдпрд╛рдБ" рдЦрдВрдб рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ ... рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░рд┐рдЪрд┐рдд рдореБрдЦрд░ рдЦреЛрдЬ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИрдВред

рдЕрдм рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рд╕рдВрдмрдВрдзрдкрд░рдХ рдЖрдзрд╛рд░ рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдорд╛рдирджрдВрдб рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд╕рдореВрд╣, рдЬреИрд╕реЗ рдХрд┐ рд╢реНрд░реЗрдгреА рдФрд░ рд░рдВрдЧ, рдХреЛ рдПрдХ рдЕрд▓рдЧ рдЕрдиреБрд░реЛрдз рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА:

SELECT pc.ProductCategoryID, pc.Name, COUNT(1) FROM Production.Product p
  INNER JOIN Production.ProductSubcategory ps ON p.ProductSubcategoryID = ps.ProductSubcategoryID
  INNER JOIN Production.ProductCategory pc ON ps.ProductCategoryID = pc.ProductCategoryID
WHERE p.Color = 'Black'
GROUP BY pc.ProductCategoryID, pc.Name
ORDER BY COUNT(1) DESC


SELECT Color, COUNT(1) FROM Production.Product p
  INNER JOIN Production.ProductSubcategory ps ON p.ProductSubcategoryID = ps.ProductSubcategoryID
WHERE ps.ProductCategoryID = 1 --Bikes
GROUP BY Color
ORDER BY COUNT(1) DESC


рдЗрд╕ рдлреИрд╕рд▓реЗ рдореЗрдВ рдХреНрдпрд╛ рдЧрд▓рдд рд╣реИ? рдмрд╣реБрдд рд╕рд░рд▓ - рдпрд╣ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдирд╣реАрдВ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд┐рд▓реНрдЯрд░ рдЕрдиреБрднрд╛рдЧ рдХреЛ рдорд╛рддреНрд░рд╛рдУрдВ рдХреА рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдХреНрд╡реЗрд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рдпреЗ рдкреНрд░рд╢реНрди рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИрдВред рдСрдирд▓рд╛рдЗрди рд╕реНрдЯреЛрд░ рдореЗрдВ, рдХреБрдЫ рдЦрдВрдбреЛрдВ рдореЗрдВ, рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рдХрдИ рджрд░реНрдЬрди рд╕реЗрдХреНрд╢рди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХ рдЧрдВрднреАрд░ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред

рдЖрдорддреМрд░ рдкрд░, рдЗрди рдмрдпрд╛рдиреЛрдВ рдХреЗ рдмрд╛рдж, рд╡реЗ рдореБрдЭреЗ рдХреБрдЫ рд╕рдорд╛рдзрд╛рди рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рддреН:

  • рд╕рднреА рдорд╛рддреНрд░рд╛рдУрдВ рдХреЛ рдПрдХ рдХреНрд╡реЗрд░реА рдореЗрдВ рдорд┐рд▓рд╛рдПрдВред рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ, рдпрд╣ UNION рдХреАрд╡рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдХреЗрд╡рд▓ рдпрд╣ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдмрд╣реБрдд рдорджрдж рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ - рд╡реИрд╕реЗ рднреА, рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдЦрд░реЛрдВрдЪ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдЯреБрдХрдбрд╝реЗ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
  • . , . , . , 10 ┬л┬╗, 5 . ┬л┬╗ , -. 9- , , . 50 , , 250. , . , 5-10 . , , - , , ( ).

рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрд╛рд░реНрдп рдореЗрдВ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдкрд░реНрдпрд╛рдкреНрдд рдкреНрд░рднрд╛рд╡реА рд╕рдорд╛рдзрд╛рди рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдкрд░ рдЕрдиреБрдорд╛рдирд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдЗрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рднреА рд╡рд┐рдХрд▓реНрдк рдХреЗ рд▓рд┐рдП, рдпрд╣ рдлрд╝реЗрд╕рд╕реЗрдЯ рд░рд┐рдХрд╡рдВрдЯ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдкреГрд╖реНрда рдХреЛ рд╕рд░реНрд╡рд░ рдХреЗ рджреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдХреЙрд▓ рдореЗрдВ рд▓рд╛рдиреЗ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЦреЛрдЬ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рд╛рде рдкрд╣рд▓реБрдУрдВ рдкрд░ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдирд╛ "рд╣рд╕реНрддрдХреНрд╖реЗрдк рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ"ред

  • ┬л┬╗ . , , , , тАФ ┬л1425 , ?┬╗ , ┬л┬╗. ┬л┬╗. , , . -. , , .
  • search engine , Solr, ElasticSearch, Sphinx . ┬л┬╗ . , , тАФ . , search engine , : , , ; search engine . тАФ . ┬л ┬╗. ┬л┬╗ , , . , - transactional outbox .


  1. тАФ , . ┬л┬╗ ┬л┬╗ тАФ , :
    • тАФ .
    • , , , . - тАФ .
  2. , тАФ #2.
  3. faceted search, :
    • .
    • search engine Solr, ElasticSearch, Sphinx . , , .
  4. faceted search . , , .
  5. SQL , , , ( ┬л┬╗ ). , тАФ ┬л┬╗. , .

All Articles