рдкрд┐рдЫрд▓реЗ
рд▓реЗрдЦ рдореЗрдВ, рдореИрдВрдиреЗ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдФрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдерд╛, рди рдХрд┐ рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдФрд░ рдлрд╝реАрд▓реНрдбреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВред рдЗрд╕рдиреЗ рдХреНрд▓рд╛рд╕рд┐рдХ рдХреЗ рдКрдкрд░ рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдлрд╛рдпрджреЗ рджрд┐рдЦрд╛рддреЗ рд╣реБрдП рдХрдИ рдЙрджрд╛рд╣рд░рдг рджрд┐рдПред рдХрдИ рд▓реЛрдЧреЛрдВ рдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рд╡реЗ рдХрд╛рдлреА рдЖрд╢реНрд╡рд╕реНрдд рдирд╣реАрдВ рдереЗред
рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдХрд┐ рдХреИрд╕реЗ рдпрд╣ рдЕрд╡рдзрд╛рд░рдгрд╛ рдЖрдкрдХреЛ рдХрд╛рдо рдХреЗ рддрд░реНрдХ рдореЗрдВ рдХреЛрдИ рдмрджрд▓рд╛рд╡ рдХрд┐рдП рдмрд┐рдирд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд▓реЗрдЦрди рдФрд░ рдкрдврд╝рдиреЗ рдХреЛ рдЬрд▓реНрджреА рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рдВрддреБрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдЙрдиреНрд╣реЛрдВрдиреЗ рдЖрдзреБрдирд┐рдХ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ DBMS (рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, Oracle рдФрд░ Microsoft SQL Server) рдореЗрдВ рд╕рдорд╛рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред рд▓реЗрдЦ рдХреЗ рдЕрдВрдд рдореЗрдВ рдореИрдВ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдХрд┐ рдЙрдирдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╣реБрдЖ, рдЗрд╕реЗ рд╣рд▓реНрдХреЗ рдврдВрдЧ рд╕реЗ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд╣реБрдд рдирд╣реАрдВред
рд╡рд┐рд╡рд░рдг
рдкрд╣рд▓реЗ рдХреА рддрд░рд╣, рдПрдХ рдмреЗрд╣рддрд░ рд╕рдордЭ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рд╡рд░рдг рд╢реБрд░реВ рдХрд░реВрдВрдЧрд╛ред рдорд╛рди рд▓реАрдЬрд┐рдП, рд╣рдореЗрдВ рдПрдХ рддрд░реНрдХ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдЙрди рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдЙрдирдХреЗ рдХреБрд▓ рд╡реЗрддрди рдХреЗ рд╕рд╛рде рд╡рд┐рднрд╛рдЧреЛрдВ рдХреА рд╕реВрдЪреА рд▓реМрдЯрд╛рдПрдЧрд╛ред
рдПрдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ, рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:
рдХрд┐рд╕реА рднреА DBMS рдореЗрдВ рдЗрд╕ рдХреНрд╡реЗрд░реА рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЬрдЯрд┐рд▓рддрд╛
рдУ (рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛) рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрдЧреА, рдЗрд╕ рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреА рдкреВрд░реА рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рд╡рд┐рднрд╛рдЧ рджреНрд╡рд╛рд░рд╛ рд╕рдореВрд╣рд┐рдд рдХрд░реЗрдВред рдХреБрдЫ рдЫреЛрдЯреЗ рднреА рд╣реЛрдВрдЧреЗ (рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╕рдореВрд╣реЛрдВ рдХреЗ рд▓рд┐рдП рдЪреБрдиреЗ рдЧрдП рдкреНрд▓рд╛рди
O (рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛) рдпрд╛
O (рд╡рд┐рднрд╛рдЧреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ ) рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдФрд░ рднреА
рдмрд╣реБрдд рд╕реЗ рдХрд░реНрдордЪрд╛рд░реА рд╣реИрдВ) ред
рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдУрд╡рд░рд╣реЗрдб рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбреАрдмреАрдПрдордПрд╕ рдореЗрдВ рдЕрд▓рдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдЯрд┐рд▓рддрд╛ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдирд╣реАрдВ рдмрджрд▓реЗрдЧреАред
рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ, рдХрд╛рд░реНрдпрд╛рддреНрдордХ DBMS рдПрдХ рдЙрдкрдХреБрдВрдЬреА рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдЧрд╛, рдЬреЛ рд╡рд┐рднрд╛рдЧ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдорд╛рдиреЛрдВ рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдЧрд╛, рдФрд░ рдлрд┐рд░ рдирд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд╛рдЧ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рдПрдХ JOIN рдХрд░реЗрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП, рдШреЛрд╖рдгрд╛ рдХрд░рддреЗ рд╕рдордп, рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред рд╕рд┐рд╕реНрдЯрдо рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдРрд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдпреБрдХреНрдд рдлрд╝реАрд▓реНрдб рдмрдирд╛рдПрдЧрд╛ред рдЬрдм рдХреЛрдИ рдлрд╝рдВрдХреНрд╢рди рдорд╛рди рдмрджрд▓рддрд╛ рд╣реИ, рддреЛ рдлрд╝реАрд▓реНрдб рдорд╛рди рдЙрд╕реА рд▓реЗрди-рджреЗрди рдореЗрдВ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рддреЗ рд╕рдордп, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд░рд┐рдХрд▓рд┐рдд рдлрд╝реАрд▓реНрдб рдореЗрдВ рдЕрдкреАрд▓ рдХреА рдЬрд╛рдПрдЧреАред
рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдпрджрд┐ рдЖрдк рдХрд╛рд░реНрдпреЛрдВ рдХреА
рдЧрдгрдирд╛ рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдФрд░
рд╡реЗрддрди рдХреЗ рд▓рд┐рдП рдХрд░рддреЗ рд╣реИрдВ , рддреЛ рд╡рд┐рднрд╛рдЧреЛрдВ рдХреА рд╕реВрдЪреА рдХреЗ рд╕рд╛рде рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рджреЛ рдлрд╝реАрд▓реНрдб рдЬреЛрдбрд╝реЗ рдЬрд╛рддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдЙрдирдХреЗ рдХреБрд▓ рд╡реЗрддрди рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдХрд░реНрдордЪрд╛рд░рд┐рдпреЛрдВ рдореЗрдВ рдХрд┐рд╕реА рднреА рдкрд░рд┐рд╡рд░реНрддрди, рд╡рд┐рднрд╛рдЧреЛрдВ рдХреЗ рд╕рд╛рде рдЙрдирдХреЗ рд╡реЗрддрди рдпрд╛ рд╕рдВрдмрджреНрдзрддрд╛ рдХреЗ рд╕рд╛рде, рд╕рд┐рд╕реНрдЯрдо рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЗрди рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдмрджрд▓ рджреЗрдЧрд╛ред рдЙрдкрд░реЛрдХреНрдд рдХреНрд╡реЗрд░реА рдЗрди рдлрд╝реАрд▓реНрдб рдХреЛ рд╕реАрдзреЗ рдПрдХреНрд╕реЗрд╕ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдЧреА рдФрд░
рдУ (рд╡рд┐рднрд╛рдЧреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛) рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХреА рдЬрд╛рдПрдЧреАред
рд╕реАрдорд╛рдПрдВ рдХреНрдпрд╛ рд╣реИрдВ? рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ: рдЗрд╕ рддрд░рд╣ рдХреЗ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЗрдирдкреБрдЯ рдорд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдорд╛рди рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЕрдиреНрдпрдерд╛, рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реЛрдЧрд╛ рдЬреЛ рдЕрдкрдиреЗ рд╕рднреА рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЕрдирдВрдд рдкрдВрдХреНрддрд┐рдпреЛрдВ рд╡рд╛рд▓реА рддрд╛рд▓рд┐рдХрд╛ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИред
рдПрдХ рдЙрджрд╛рд╣рд░рдг:
рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╕рдВрдЦреНрдпрд╛ N рдХреЗ рдЕрдирдВрдд рдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреЛрдИ рднреА рдирдХрд╛рд░рд╛рддреНрдордХ рдорд╛рди рдЙрдкрдпреБрдХреНрдд рд╣реИ)ред рдЗрд╕рд▓рд┐рдП, рдЗрд╕реЗ MATERIALIZED рдирд╣реАрдВ рдбрд╛рд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдпрд╣ рдПрдХ рддрд╛рд░реНрдХрд┐рдХ рд╣реИ рдФрд░ рддрдХрдиреАрдХреА рд╕реАрдорд╛ рдирд╣реАрдВ рд╣реИ (рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдЗрд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░ рдкрд╛рдП рд╣реИрдВ)ред рдЕрдиреНрдпрдерд╛, рдХреЛрдИ рдкреНрд░рддрд┐рдмрдВрдз рдирд╣реАрдВред рдЖрдк рдЧреНрд░реБрдкрд┐рдВрдЧ, рд╕реЙрд░реНрдЯрд┐рдВрдЧ, рдФрд░ рдПрдВрдб, рдкрд╛рд░реНрдЯрд┐рд╢рди, рд░рд┐рдХрд░реНрд╕рди рдЖрджрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдХреЗ рдХрд╛рд░реНрдп реи.реи рдореЗрдВ, рдЖрдк рджреЛрдиреЛрдВ рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рд╕рд╛рдордЧреНрд░реА рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ:
рд╕рд┐рд╕реНрдЯрдо рд╕реНрд╡рдпрдВ рд╣реА
рдЧреНрд░рд╛рд╣рдХ ,
рдЙрддреНрдкрд╛рдж рдФрд░
INTEGER рдкреНрд░рдХрд╛рд░ рдХреА рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдПрдЧрд╛, рдЗрд╕рдореЗрдВ рджреЛ рдлрд╝реАрд▓реНрдб рдЬреЛрдбрд╝реЗрдЧрд╛ рдФрд░ рдЙрдирдореЗрдВ рдХрд┐рд╕реА рднреА рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд╕рд╛рде рдлрд╝реАрд▓реНрдб рдорд╛рди рдЕрдкрдбреЗрдЯ рдХрд░реЗрдЧрд╛ред рдЗрди рдлрд╝рдВрдХреНрд╢рдВрд╕ рдкрд░ рдЖрдЧреЗ рдХреЙрд▓ рдХрд░рдиреЗ рдкрд░, рдЙрдирдХреА рдЧрдгрдирд╛ рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдЧреА, рд▓реЗрдХрд┐рди рд╕рдВрдмрдВрдзрд┐рдд рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкрдврд╝рд╛ рдЬрд╛рдПрдЧрд╛ред
рдЗрд╕ рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреНрд░рд╢реНрдиреЛрдВ рдореЗрдВ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ (CTE) рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЙрди рд╕рдореВрд╣реЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдЬреЛ рдмрдЪреНрдЪреЗ / рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рд░рд┐рд╢реНрддреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреЗрдбрд╝ рдмрдирд╛рддреЗ рд╣реИрдВ (рдкреНрд░рддреНрдпреЗрдХ рд╕рдореВрд╣ рдХрд╛ рдЕрдкрдиреЗ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рд╣реИ):
рдПрдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ, рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рддрд░реНрдХ рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
рдЪреВрдВрдХрд┐ MATERIALIZED
isParent рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдЪрд┐рдкрдХрд╛ рд╣реИ,
рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреЗ рд▓рд┐рдП рджреЛ рдХреБрдВрдЬрд┐рдпреЛрдВ (рд╕рдореВрд╣реЛрдВ) рдХреЗ рд╕рд╛рде рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдИ рдЬрд╛рдПрдЧреА, рдЬрд┐рд╕рдореЗрдВ
isParent рдлрд╝реАрд▓реНрдб рдХреЗрд╡рд▓ рддрднреА рд╕рд╣реА рд╣реЛрдЧреА рдЬрдм рдкрд╣рд▓реА рдХреБрдВрдЬреА рджреВрд╕рд░реА рдХреА рд╡рдВрд╢рдЬ рд╣реЛред рдЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкреЗрдбрд╝ рдХреА рдФрд╕рдд рдЧрд╣рд░рд╛рдИ рдХреЗ рд╕рдореВрд╣реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрдЧреАред рдпрджрд┐ рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдореВрд╣ рдХреЗ рд╡рдВрд╢рдЬреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рддреЛ рдЖрдк рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
SQL рдХреНрд╡реЗрд░реА рдореЗрдВ рдХреЛрдИ CTE рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЧреНрд░реБрдк рдмреАрд╡рд╛рдИ рд╣реЛрдЧрд╛ред
рдЗрд╕ рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЖрдк рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдирд┐рд░реВрдкрд┐рдд рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
рдЬрдм рдЖрдк рдСрд░реНрдбрд░ рд▓рд╛рдЗрди рдХреЗ рд▓рд┐рдП
рджрд┐рдирд╛рдВрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд░реАрдбрд┐рдВрдЧ рдЙрд╕ рдлрд╝реАрд▓реНрдб рдХреА рдСрд░реНрдбрд░ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд╕рд╛рде рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рд╣реЛрдЧреА рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реВрдЪрдХрд╛рдВрдХ рд╣реИред рдЖрджреЗрд╢ рдХреА рддрд╛рд░реАрдЦ рдмрджрд▓рддреЗ рд╕рдордп, рд╕рд┐рд╕реНрдЯрдо рд╕реНрд╡рддрдГ рд╣реА рд▓рд╛рдЗрди рдореЗрдВ рдореМрдЬреВрдж рджрд┐рдирд╛рдВрдХ рдХреЛ рдкреБрдирд░реНрдЧрдгрдирд╛ рдХрд░реЗрдЧрд╛ред
рд▓рд╛рдн
рдЗрд╕ рдкреВрд░реЗ рддрдВрддреНрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ? рдХреНрд▓рд╛рд╕рд┐рдХ рдбреАрдмреАрдПрдордПрд╕ рдореЗрдВ, рдкреБрдирд░реНрд▓реЗрдЦрди рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдмрд┐рдирд╛, рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдпрд╛ рдбреАрдмреАрдП рдХреЗрд╡рд▓ рдЕрдиреБрдХреНрд░рдорд┐рдд рдХреЛ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИ, рдЖрдВрдХрдбрд╝реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдХреНрд╡реЗрд░реА рдкреНрд▓рд╛рдирд░ рдХреЛ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП (рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, HINT рдХреЗрд╡рд▓ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ DBMS рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ)ред рдЪрд╛рд╣реЗ рд╡реЗ рдХрд┐рддрдиреА рднреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд▓реЗрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдФрд░ рдЯреНрд░рд┐рдЧрд░ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд┐рдирд╛
рдУ (рд╡рд┐рднрд╛рдЧреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛) рдХреЗ рд▓рд┐рдП рд▓реЗрдЦ рдореЗрдВ рдкрд╣рд▓рд╛ рдЕрдиреБрд░реЛрдз рдкреВрд░рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдпреЛрдЬрдирд╛ рдореЗрдВ, рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕реНрддрд░ рдкрд░, рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рд╕реНрдЯреЛрд░реЗрдЬ рдХреА рд╕рдВрд░рдЪрдирд╛ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди-рд╕реЗ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪрдирд╛ рд╣реИред рдпрд╣ рд╕рдм рдордХреНрдЦреА рдкрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд╕реАрдзреЗ рдСрдкрд░реЗрд╢рди рдореЗрдВред
рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдпрд╣ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИред рдХреБрдЫ рд▓реЛрдЧ рдХрд╛рд░реНрдп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕реАрдзреЗ рддрд░реНрдХ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╡реЗ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдФрд░ рдЙрдирдХреА рдЬрдЯрд┐рд▓рддрд╛ рдореЗрдВ рдкрд╛рд░рдВрдЧрдд рдирд╣реАрдВ рд╣реИрдВ, рди рд╣реА рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ, рди рд╣реА join'ov рдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ, рди рд╣реА рдХрд┐рд╕реА рдЕрдиреНрдп рддрдХрдиреАрдХреА рдШрдЯрдХ рдореЗрдВред рдпреЗ рд▓реЛрдЧ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╡реНрдпрд╛рдкрд╛рд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╣реИрдВред рдлрд┐рд░, рдпрд╣ рд╕рдм рдкрд░реАрдХреНрд╖рдг рдпрд╛ рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓рдВрдмреЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рд▓реЙрдЧрд┐рдВрдЧ рд╕рдХреНрд╖рдо рд╣реИред рдЬрдм рдПрдХ рд▓рдВрдмреЗ рдЕрдиреБрд░реЛрдз рдХрд╛ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, рддреЛ рдЕрдиреНрдп рд▓реЛрдЧ (рдЕрдзрд┐рдХ рддрдХрдиреАрдХреА - рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдбреАрдмреАрдП) рдХреБрдЫ рдордзреНрдпрд╡рд░реНрддреА рдлрд╝рдВрдХреНрд╢рди рдкрд░ MATERIALIZED рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВред рдЬрд┐рд╕рд╕реЗ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдереЛрдбрд╝реА рдзреАрдореА рд╣реЛ рдЬрд╛рддреА рд╣реИ (рдХреНрдпреЛрдВрдХрд┐ рд▓реЗрди-рджреЗрди рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреНрд╖реЗрддреНрд░ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ)ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рди рдХреЗрд╡рд▓ рдЗрд╕ рдЕрдиреБрд░реЛрдз рдореЗрдВ рдХрд╛рдлреА рддреЗрдЬреА рд╣реИ, рдмрд▓реНрдХрд┐ рд╕рднреА рдЕрдиреНрдп рдЬреЛ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЙрд╕реА рд╕рдордп, рдпрд╣ рдирд┐рд░реНрдгрдп рдХрд░рдирд╛ рдХрд┐ рдХрд┐рд╕ рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░реНрдп рдХреЛ рднреМрддрд┐рдХ рдмрдирд╛рдирд╛ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕рд░рд▓ рд╣реИред рджреЛ рдореБрдЦреНрдп рдкреИрд░рд╛рдореАрдЯрд░: рд╕рдВрднрд╛рд╡рд┐рдд рдЗрдирдкреБрдЯ рдорд╛рдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ (рдареАрдХ рдЗрд╕реА рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдХрд┐рддрдиреЗ рд░рд┐рдХреЙрд░реНрдб рд╣реЛрдВрдЧреЗ), рдФрд░ рдпрд╣ рдХрд┐рддрдиреА рдмрд╛рд░ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдПрдирд╛рд▓реЙрдЧ
рдЖрдзреБрдирд┐рдХ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ DBMS рдореЗрдВ рд╕рдорд╛рди рддрдВрддреНрд░ рд╣реИрдВ: FAST REFRESH (Oracle) рдФрд░ INDEXED VIEW (Microsoft SQL Server) рдХреЗ рд╕рд╛рде MATERIALIZED VIEWред PostgreSQL MATERIALIZED VIEW рдореЗрдВ рд▓реЗрди-рджреЗрди рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдЕрдиреБрд░реЛрдз рдкрд░ (рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдмрд╣реБрдд рд╕рдЦреНрдд рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЗ рд╕рд╛рде), рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЙрдирдХреЗ рдкрд╛рд╕ рдХрдИ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ, рдЬреЛ рдЙрдирдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рддреА рд╣реИрдВред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдк рднреМрддрд┐рдХрдХрд░рдг рдХреЛ рддрднреА рд╕рдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдПрдХ рдирд┐рдпрдорд┐рдд рджреГрд╢реНрдп рдмрдирд╛ рд▓рд┐рдпрд╛ рд╣реЛред рдЕрдиреНрдпрдерд╛, рдЖрдкрдХреЛ рдЗрд╕ рднреМрддрд┐рдХрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдП рдмрдирд╛рдП рдЧрдП рджреГрд╢реНрдп рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╢реЗрд╖ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдпрд╛ рд╕рдм рдХреБрдЫ рдЫреЛрдбрд╝ рджреЗрдВ рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрдо рд╕реЗ рдХрдо рдЕрдкреНрд░рднрд╛рд╡реА рд╣реЛрдЧрд╛ рдпрджрд┐ рдХреБрдЫ рдбреЗрдЯрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЧрдгрдирд╛ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрдИ рдкреНрд░рд╢реНрди рд╣рдореЗрд╢рд╛ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рд╕реЗ рдЧрдгрдирд╛ рдХрд░рддреЗ рд╣реИрдВред
рджреВрд╕рд░реЗ, рдЙрдирдХреЗ рдкрд╛рд╕ рднрд╛рд░реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкреНрд░рддрд┐рдмрдВрдз рд╣реИрдВ:
рдУрд░реЗрдХрд▓5.3.8.4 рдлрд╛рд╕реНрдЯ рд░рд┐рдлреНрд░реЗрд╢ рдкрд░ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рддрд┐рдмрдВрдз
рднреМрддрд┐рдХрдХреГрдд рджреГрд╢реНрдп рдХреА рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреНрд╡реЗрд░реА рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рд╣реИ:
- рднреМрддрд┐рдХрд╡рд╛рджреА рджреГрд╢реНрдп рдореЗрдВ рдЧреИрд░-рджреЛрд╣рд░рд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдЬреИрд╕реЗ
SYSDATE
рдФрд░ ROWNUM
рд╕рдВрджрд░реНрдн рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред - рднреМрддрд┐рдХ рджреГрд╢реНрдп рдореЗрдВ
RAW
рдпрд╛ LONG
RAW
рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрджрд░реНрдн рдирд╣реАрдВ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред - рдЗрд╕рдореЗрдВ
SELECT
рд╕реВрдЪреА рдЙрдкрдХреБрдВрдЬреА рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреАред - рдЗрд╕рдореЗрдВ
SELECT
рдЦрдВрдб рдореЗрдВ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрд╛рддреНрдордХ рдХрд╛рд░реНрдп рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, RANK
)ред - рдпрд╣ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рд╕рдВрджрд░реНрдн рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕ рдкрд░
XMLIndex
рд╕реВрдЪрдХрд╛рдВрдХ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред - рдЗрд╕рдореЗрдВ рдПрдХ
MODEL
рдХреНрд▓реЙрдЬ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ред - рдЗрд╕рдореЗрдВ
HAVING
рд╡рд░реНрдЧ рдХреЗ рд╕рд╛рде рдПрдХ HAVING рдЦрдВрдб рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ред - рдЗрд╕рдореЗрдВ рдиреЗрд╕реНрдЯреЗрдб рдХреНрд╡реЗрд░реАрдЬрд╝ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ
ANY
, ALL
рдпрд╛ NOT
EXISTS
ред - рдЗрд╕рдореЗрдВ рдПрдХ
[START WITH тАж] CONNECT BY
рдЦрдВрдб [START WITH тАж] CONNECT BY
рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ред - рдЗрд╕рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдХрдИ рдбрд┐рдЯреЗрд▓ рдЯреЗрдмрд▓ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
COMMIT
рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдореЗрдВ рджреВрд░рд╕реНрде рд╡рд┐рд╡рд░рдг рддрд╛рд▓рд┐рдХрд╛рдПрдБ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреАрдВред- рдирд┐рд╣рд┐рдд рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдореЗрдВ рдПрдХ рд╕рдореНрдорд┐рд▓рд┐рдд рдпрд╛ рд╕рдореБрдЪреНрдЪрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
- рднреМрддрд┐рдХ рд░реВрдк рд╕реЗ рдЬреБрдбрд╝рдиреЗ рдХреЗ рд╡рд┐рдЪрд╛рд░ рдФрд░ рдПрдХ
GROUP
BY
GROUP
рд╕рд╛рде рднреМрддрд┐рдХ рд░реВрдк рд╕реЗ рдПрдХрддреНрд░рд┐рдд рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛-рд╕рдВрдЧрдард┐рдд рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдирд╣реАрдВ рдЪреБрдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
5.3.8.5 рдХреЗрд╡рд▓ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде рднреМрддрд┐рдХрд╡рд╛рджреА рджреГрд╢реНрдпреЛрдВ рдкрд░ рддреЗрдЬреА рд╕реЗ рддрд╛рдЬрд╝рд╛ рдХрд░рдиреЗ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз
рдХреЗрд╡рд▓ рдФрд░ рдХреЛрдИ рд╕рдореБрдЪреНрдЪрдп рдХреЗ рд╕рд╛рде рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рддреЗрдЬреА рд╕реЗ рддрд╛рдЬрд╝рд╛ рдХрд░рдиреЗ рдкрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рддрд┐рдмрдВрдз рд╣реИрдВ:
- " рдлрд╛рд╕реНрдЯ рд░рд┐рдлреНрд░реЗрд╢ рдкрд░ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рддрд┐рдмрдВрдз " рд╕реЗ рд╕рднреА рдкреНрд░рддрд┐рдмрдВрдзред
- рдЙрдирдХреЗ рдкрд╛рд╕
GROUP
BY
рдЦрдВрдб рдпрд╛ рд╕рдореБрдЪреНрдЪрдп рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗред FROM
рд╕реВрдЪреА рдореЗрдВ рд╕рднреА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рдкрдВрдХреНрддрд┐ рдХреНрд╡реЗрд░реА рдХреА SELECT
рд╕реВрдЪреА рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдиреА рдЪрд╛рд╣рд┐рдПред- рдХреНрд╡реЗрд░реА рдХреА
FROM
рд╕реВрдЪреА рдореЗрдВ рд╕рднреА рдмреЗрд╕ рдЯреЗрдмрд▓ рдХреЗ рд▓рд┐рдП рдкрдВрдХреНрддрд┐рдмрджреНрдз рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рднреМрддрд┐рдХ рд░реВрдк рд╕реЗ рджреЗрдЦреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд▓реЙрдЧ рдореМрдЬреВрдж рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред - рдЖрдк рд╕рд░рд▓ рдЬреЛрдбрд╝ рдХреЗ рд╕рд╛рде рдХрдИ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рд╕реЗ рдПрдХ рддреЗрдЬрд╝ рд░реАрдлреНрд░реЗрд╢ рдХрд┐рдП рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓рд╛ рднреМрддрд┐рдХ рджреГрд╢реНрдп рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ
SELECT
рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдХреЙрд▓рдо рд╢рд╛рдорд┐рд▓ рд╣реЛред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЪреБрдиреА рдЧрдИ рд░реАрдлреНрд░реЗрд╢ рд╡рд┐рдзрд┐ рдпрджрд┐ рдЖрдкрдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИ рддреЛ:
- рдбрд┐рдлрд╛рдЗрдирд┐рдВрдЧ рдХреНрд╡реЗрд░реА рдПрдХ рдмрд╛рд╣рд░реА рдЬреЙрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ рдЬреЛ рдПрдХ рдЖрдВрддрд░рд┐рдХ рдЬреЙрдЗрди рдХреА рддрд░рд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреА рд╣реИред рдпрджрд┐ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рдХреНрд╡реЗрд░реА рдореЗрдВ рдРрд╕рд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ, рддреЛ рдЖрдВрддрд░рд┐рдХ рдЬреБрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреНрд╡реЗрд░реА рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред
- рднреМрддрд┐рдХрд╡рд╛рджреА рджреГрд╢реНрдп рдХреА
SELECT
рд╕реВрдЪреА рдореЗрдВ рдХрдИ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд╕реНрддрдВрднреЛрдВ рдХреЗ рднрд╛рд╡ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
5.3.8.6 рдЙрдкрдЧреНрд░рд╣реЛрдВ рдХреЗ рд╕рд╛рде рднреМрддрд┐рдХрд╡рд╛рджреА рджреГрд╢реНрдпреЛрдВ рдкрд░ рддреЗрдЬреА рд╕реЗ рддрд╛рдЬрд╝рд╛ рдХрд░рдиреЗ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз
рд╕рдореБрдЪреНрдЪрдп рдпрд╛ рдЬреЛрдбрд╝ рдХреЗ рд╕рд╛рде рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рддреЗрдЬреА рд╕реЗ рддрд╛рдЬрд╝рд╛ рдХрд░рдиреЗ рдкрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рддрд┐рдмрдВрдз рд╣реИрдВ:
рддреЗрдЬрд╝ рддрд╛рдЬрд╝рд╛ рдХреЛ COMMIT
рдФрд░ ON
DEMAND
рджреЛрдиреЛрдВ рдХреЗ рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдБрдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рддрд┐рдмрдВрдз рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВ:
- рднреМрддрд┐рдХрд╡рд╛рджреА рджреГрд╢реНрдп рдореЗрдВ рд╕рднреА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рднреМрддрд┐рдХ рджреГрд╢реНрдп рджреГрд╢реНрдп рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП, рдФрд░ рднреМрддрд┐рдХ рджреГрд╢реНрдп рджреГрд╢реНрдп рд▓реЙрдЧ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП:
- рднреМрддрд┐рдХ рджреГрд╖реНрдЯрд┐ рд╕реЗ рд╕рдВрджрд░реНрднрд┐рдд рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рднреА рд╕реНрддрдВрднреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВред
ROWID
рдФрд░ INCLUDING
NEW
VALUES
рд╕рд╛рде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред- рдпрджрд┐ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЖрд╡реЗрд╖рдг / рдкреНрд░рддреНрдпрдХреНрд╖-рднрд╛рд░, рд╣рдЯрд╛рдиреЗ, рдФрд░ рдЕрдкрдбреЗрдЯ рдХрд╛ рдорд┐рд╢реНрд░рдг рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рд╣реИ, рддреЛ
SEQUENCE
рдЦрдВрдб рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред
- рдХреЗрд╡рд▓
SUM
, COUNT
, AVG
, VARIANCE
, VARIANCE
, MIN
рдФрд░ MAX
рдлрд╛рд╕реНрдЯ рд░рд┐рдлреНрд░реЗрд╢ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред COUNT(*)
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред- рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрд╛рд░реНрдп рдХреЗрд╡рд▓ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдмрд╛рд╣рд░реА рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред рдпрд╣реА рд╣реИ,
AVG(AVG(x))
рдпрд╛ AVG(x)
+ AVG(x)
рдЬреИрд╕реЗ рд╕рдореБрдЪреНрдЪрдп рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИред - рдкреНрд░рддреНрдпреЗрдХ рд╕рдореБрдЪреНрдЪрдп рдЬреИрд╕реЗ
AVG(expr)
, рд╕рдВрдмрдВрдзрд┐рдд COUNT(expr)
рдореМрдЬреВрдж рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред Oracle рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реИ рдХрд┐ SUM(expr)
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПред - рдпрджрд┐
VARIANCE(expr)
рдпрд╛ STDDEV(expr
) рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИ, рддреЛ COUNT(expr)
рдФрд░ SUM(expr)
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред Oracle рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реИ рдХрд┐ SUM(expr *expr)
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПред - рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреНрд╡реЗрд░реА рдореЗрдВ
SELECT
рдХреЙрд▓рдо рдХрдИ рдмреЗрд╕ рдЯреЗрдмрд▓ рд╕реЗ рдХреЙрд▓рдо рдХреЗ рд╕рд╛рде рдПрдХ рдЬрдЯрд┐рд▓ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди рдПрдХ рдиреЗрд╕реНрдЯреЗрдб рднреМрддрд┐рдХреАрдХреГрдд рджреГрд╢реНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред SELECT
рд▓рд┐рд╕реНрдЯ рдореЗрдВ рд╕рднреА GROUP
BY
рдХреЙрд▓рдо рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред- рднреМрддрд┐рдХрд╡рд╛рджреА рджреГрд╢реНрдп рдПрдХ рдпрд╛ рдЕрдзрд┐рдХ рджреВрд░рд╕реНрде рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рд╣реИред
- рдпрджрд┐ рдЖрдк рднреМрддрд┐рдХ рджреГрд╢реНрдп рд▓реЙрдЧ рдХреЗ рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЙрд▓рдо рдореЗрдВ рдПрдХ
CHAR
рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдорд╛рд╕реНрдЯрд░ рд╕рд╛рдЗрдЯ рдХреЗ рд╡рд░реНрдг рд╕реЗрдЯ рдФрд░ рднреМрддрд┐рдХ рджреГрд╢реНрдп рд╕рдорд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред - рдпрджрд┐ рднреМрддрд┐рдХ рджреГрд╢реНрдп рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, рддреЛ рддреЗрдЬреА рд╕реЗ рддрд╛рдЬрд╝рд╛ рдХреЗрд╡рд▓ рдкрд╛рд░рдВрдкрд░рд┐рдХ рдбреАрдПрдордПрд▓ рдЖрд╡реЗрд╖рдг рдФрд░ рдкреНрд░рддреНрдпрдХреНрд╖ рднрд╛рд░ рдкрд░ рд╕рдорд░реНрдерд┐рдд рд╣реИред
MIN
рдпрд╛ MAX
рд╕рдореБрдЪреНрдЪрдп рдХреЗ рд╕рд╛рде рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░- рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░ рдЬрд┐рд╕рдореЗрдВ
SUM(expr)
рд▓реЗрдХрд┐рди рдХреЛрдИ COUNT(expr)
COUNT(*)
рдмрд┐рдирд╛ рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░
рдЗрд╕ рддрд░рд╣ рдХреЗ рднреМрддрд┐рдХрд╡рд╛рджреА рджреГрд╢реНрдп рдХреЛ рдХреЗрд╡рд▓ рд╕рдореНрдорд┐рд▓рд┐рдд рднреМрддрд┐рдХ рджреГрд╢реНрдп рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред MAX
рдпрд╛ MIN
рд╕рд╛рде рдПрдХ рднреМрддрд┐рдХреАрдХреГрдд рджреГрд╢реНрдп, рдбреАрдПрдордПрд▓ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХреЛ рд╣рдЯрд╛рдиреЗ рдпрд╛ рдорд┐рд╢реНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рддреЗрдЬреА рд╕реЗ рд░реАрдлреНрд░реИрд╢реЗрдмрд▓ рд╣реИ рдпрджрд┐ рдЗрд╕рдореЗрдВ WHERE
рдХреНрд▓реЙрдЬ рдирд╣реАрдВ рд╣реИред
рдбрд┐рд▓реАрдЯ рдпрд╛ рдорд┐рдХреНрд╕реНрдб рдбреАрдПрдордПрд▓ рдХреЗ рдмрд╛рдж рдЕрдзрд┐рдХрддрдо / рдорд┐рдирдЯ рдлрд╛рд╕реНрдЯ рд░рд┐рдлреНрд░реЗрд╢ рдореЗрдВ рдХреЗрд╡рд▓-рдЗрдиреНрд╕рд░реНрдЯ рдХреЗрд╕ рдХреЗ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдкреНрд░рднрд╛рд╡рд┐рдд рд╕рдореВрд╣реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХрддрдо / рдорд┐рдирдЯ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╣рдЯрд╛рддрд╛ рд╣реИ рдФрд░ рдкреБрди: рдмрдирд╛рддрд╛ рд╣реИред рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рднрд╛рд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПредFROM
рдХреНрд▓реЙрдЬ рдореЗрдВ рдирд╛рдорд┐рдд рд╡рд┐рдЪрд╛рд░реЛрдВ рдпрд╛ рдЙрдкрд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рддреЗрдЬреА рд╕реЗ рддрд╛рдЬрд╝рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдмрд╢рд░реНрддреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдорд┐рд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдХрд┐рд╕ рджреГрд╢реНрдп рдкрд░ рд╡рд┐рд▓рдп рд╣реЛрдЧрд╛, рдЗрд╕рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, Oracle рдбреЗрдЯрд╛рдмреЗрд╕ SQL тАЛтАЛрднрд╛рд╖рд╛ рд╕рдВрджрд░реНрдн рджреЗрдЦреЗрдВ ред- рдпрджрд┐ рдХреЛрдИ рдмрд╛рд╣рд░реА рдЬреБрдбрд╝рд╛рд╡ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдкрдХреЗ рдкрд╛рд╕
WHERE
рдХреНрд▓реЙрдЬ рдореЗрдВ рдордирдорд╛рдиреЗ рдЪрдпрди рдФрд░ рдЬреЛрдбрд╝ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред - рдмрд╛рд╣рд░реА рдЬреЛрдбрд╝ рдХреЗ рд╕рд╛рде рднреМрддрд┐рдХ рд░реВрдк рд╕реЗ рд╕рдордЧреНрд░ рд╡рд┐рдЪрд╛рд░, рдкрд╛рд░рдВрдкрд░рд┐рдХ рдбреАрдПрдордПрд▓ рдФрд░ рдкреНрд░рддреНрдпрдХреНрд╖ рднрд╛рд░ рдХреЗ рдмрд╛рдж рддреЗрдЬреА рд╕реЗ рдкрд░рд┐рд╖реНрдХреГрдд рд╣реЛрддреЗ рд╣реИрдВ, рдмрд╢рд░реНрддреЗ рдХреЗрд╡рд▓ рдмрд╛рд╣рд░реА рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдВрддрд░рд┐рдХ рдЬреБрдбрд╝рд╛рд╡ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╢рд╛рдорд┐рд▓ рд╕реНрддрдВрднреЛрдВ рдкрд░ рдЕрджреНрд╡рд┐рддреАрдп рдЕрд╡рд░реЛрдзреЛрдВ рдХрд╛ рдЕрд╕реНрддрд┐рддреНрд╡ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдмрд╛рд╣рд░реА рдЬреБрдбрд╝рд╛рд╡ рд╣реИрдВ, рддреЛ рд╕рднреА рдЬреЙрдЗрдВрдЯ
AND
s рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рдорд╛рдирддрд╛ ( =
) рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред CUBE
, ROLLUP
, рд╕рдореВрд╣реАрдХрд░рдг, рдпрд╛ рдЙрдирдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рд╕рд╛рде рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рддрд┐рдмрдВрдз рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВ:
SELECT
рд╕реВрдЪреА рдореЗрдВ рд╕рдореВрд╣реАрдХрд░рдг рд╕рдореВрд╣ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдореВрд╣реАрдХрд░рдг рдпрд╛ рдХрд╛рд░реНрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ GROUP
BY
рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧреНрд░реБрдкрд┐рдВрдЧ рдпрд╛ рдХрд╛рд░реНрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рднреМрддрд┐рдХ рджреГрд╖реНрдЯрд┐ рд╕реЗ GROUP
BY
GROUP
" GROUP
BY
CUBE(a, b)
" рд╣реИ, рддреЛ SELECT
рд╕реВрдЪреА рдореЗрдВ " GROUPING_ID(a, b)
" рдпрд╛ " GROUPING(a)
AND
GROUPING(b)
"рджреНрд░рд╡реАрдХреГрдд рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рддреЗрдЬреА рд╕реЗ рд░реАрдлреНрд░реЗрд╢реЗрдмрд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПредGROUP
BY
рдкрд░рд┐рдгрд╛рдо рдХрд┐рд╕реА рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдЧреНрд░реБрдкрд┐рдВрдЧ рдореЗрдВ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, " GROUP BY a, ROLLUP(a, b)
" рддреЗрдЬреА рд╕реЗ рд░реАрдлреНрд░реЗрд╢ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдЧреНрд░реБрдкрд┐рдВрдЧ рд╣реЛрддреА рд╣реИ " (a), (a, b), AND (a)
"ред
5.3.8.7 рдпреВрдирд┐рдЕрди рдСрд▓ рдХреЗ рд╕рд╛рде рднреМрддрд┐рдХ рджреГрд╢реНрдпреЛрдВ рдкрд░ рдлрд╛рд╕реНрдЯ рд░рд┐рдлреНрд░реЗрд╢ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз
UNION
рд╕рд╛рде рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░ ALL
рд╕реЗрдЯ рдСрдкрд░реЗрдЯрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрдерд┐рддрд┐рдпреЛрдВ рд╕реЗ рд╕рдВрддреБрд╖реНрдЯ рд╣реЛрдиреЗ рдкрд░ REFRESH
FAST
рд╡рд┐рдХрд▓реНрдк рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ:
- рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреНрд╡реЗрд░реА рдореЗрдВ рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдкрд░
UNION
ALL
рдСрдкрд░реЗрдЯрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
UNION
ALL
рдСрдкрд░реЗрдЯрд░ рдХреЛ рдПрдХ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде рдПрдХ рдЙрдкрдХреБрдВрдЬреА рдХреЗ рдЕрдВрджрд░ рдПрдореНрдмреЗрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: UNION
ALL
рд╕рдмрдорд┐рд╢рди рдореЗрдВ рд╕рдмрдорд┐рд╢рди рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдмрд╢рд░реНрддреЗ рдХрд┐ рдбрд┐рдлрд╛рдЗрдирд┐рдВрдЧ рдХреНрд╡реЗрд░реА рдлреЙрд░реНрдо рдХрд╛ рд╣реИ SELECT * FROM
(рджреЗрдЦреЗрдВ рдпрд╛ рд╕рдмрдХреБрдЫ рдпреВрдПрдирдЖрдИрдУрдПрди ALL
) рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ рдЙрджрд╛рд╣рд░рдг:
VATE view_with_unionall рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦреЗрдВ
(SELECT c.rowid crid, c.cust_id, 2 рдЙрдорд░рд░
рдЧреНрд░рд╛рд╣рдХреЛрдВ рд╕реЗ c cust_last_name = 'рд╕реНрдорд┐рде'
рдпреВрдирд┐рдЕрди рдСрд▓
C.rowid crid, c.cust_id, 3 umarker рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ
рдЧреНрд░рд╛рд╣рдХреЛрдВ рд╕реЗ c cust_last_name = 'рдЬреЛрдиреНрд╕');
рдирд┐рд░реНрдорд┐рдд рд╕рд╛рдордЧреНрд░реА рджреЗрдЦреЗрдВ Unionall_inside_view_mv
DEMAND рдХреЗ рд░реВрдк рдореЗрдВ рдкреБрдирд░реНрдкрд░рд┐рднрд╛рд╖рд┐рдд
рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ * рд╕реЗ view_with_unionall;
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рджреГрд╢реНрдп view_with_unionall
рддреЗрдЬреА рд╕реЗ рддрд╛рдЬрд╝рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рд╕рдВрддреБрд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред UNION
рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдХреНрд╡реЗрд░реА рдмреНрд▓реЙрдХ ALL
рдХреНрд╡реЗрд░реА рдХреЛ рд╕рдореБрдЪреНрдЪрдп рдХреЗ рд╕рд╛рде рдПрдХ рддреЗрдЬ рд░реАрдлреНрд░реЗрд╢реЗрдмрд▓ рдордЯреЗрд░рд┐рдЕрд▓ рд╡реНрдпреВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рдкреВрд░рд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдЬреЙрдиреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╛рд╕реНрдЯ рд░рд┐рдлреНрд░реИрд╕реЗрдмрд▓ рдордЯреЗрд░рд┐рдЕрд▓ рд╡реНрдпреВ рдХреЛ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЙрдкрдпреБрдХреНрдд рднреМрддрд┐рдХреАрдХреГрдд рджреГрд╢реНрдп рд▓реЙрдЧреНрд╕ рдХреЛ рдЙрд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдлрд╛рд╕реНрдЯ рд░рд┐рдлреНрд░реЗрд╕реЗрдмрд▓ рдордЯреЗрд░рд┐рдЕрд▓ рд╡реНрдпреВ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдкрд░ рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдУрд░реЗрдХрд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдПрдХрд▓ рддрд╛рд▓рд┐рдХрд╛ рднреМрддрд┐рдХ рджреГрд╢реНрдп рдХреЗ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓реЗ рдХреЛ рднреА ROWID
рдмрд╢рд░реНрддреЗ рдХрд┐ ROWID
рд╕реНрддрдВрдн рдХреЛ SELECT
рд╕реВрдЪреА рдореЗрдВ рдФрд░ рднреМрддрд┐рдХ рджреГрд╢реНрдп рд▓реЙрдЧ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛред рдпрд╣ рджреГрд╢реНрдп view_with_unionall
рдХреА рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХреНрд╡реЗрд░реА рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред- рдкреНрд░рддреНрдпреЗрдХ рдХреНрд╡реЗрд░реА рдХреА
SELECT
рд╕реВрдЪреА рдореЗрдВ рдПрдХ UNION
ALL
рдорд╛рд░реНрдХрд░ рд╢рд╛рдорд┐рд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ UNION
ALL
рдХреЙрд▓рдо рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ UNION
ALL
рд╢рд╛рдЦрд╛ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рд╕реНрдерд┐рд░ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдпрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдорд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдорд╛рд░реНрдХрд░ рдХреЙрд▓рдо рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдХреНрд╡реЗрд░реА рдмреНрд▓реЙрдХ рдХреА SELECT
рд╕реВрдЪреА рдореЗрдВ рдЙрд╕реА рдХреНрд░рдорд┐рдХ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред UNION ALL рдорд╛рд░реНрдХрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП " UNION ALL рдорд╛рд░реНрдХрд░ рдФрд░ рдХреНрд╡реЗрд░реА рдкреБрдирд░реАрдХреНрд╖рдг " рджреЗрдЦреЗрдВред - рдХреБрдЫ рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдЬреИрд╕реЗ рдХрд┐ рдмрд╛рд╣рд░реА рдЬреЛрдбрд╝, рдХреЗрд╡рд▓ рд╕рдореНрдорд┐рд▓рд┐рдд рднреМрддрд┐рдХ рджреНрд░рд╖реНрдЯрд┐рдХреЛрдг рдХреНрд╡реЗрд░реАрдЬрд╝ рдФрд░ рджреВрд░рд╕реНрде рддрд╛рд▓рд┐рдХрд╛рдПрдБ
UNION
ALL
рд╕рд╛рде рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИрдВред рдзреНрдпрд╛рди рджреЗрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкреНрд░рддрд┐рдХреГрддрд┐ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░, рдЬрд┐рдирдореЗрдВ рдЬреЛрдбрд╝ рдпрд╛ рдПрдЧреНрд░реАрдЧреЗрдЯ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИрдВ, рдЬрдм рддреЗрдЬреА рд╕реЗ рддрд╛рдЬрд╝рд╛ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм UNION
ALL
рдпрд╛ рд░рд┐рдореЛрдЯ рдЯреЗрдмрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред - рд╕рдВрдЧрддрддрд╛ рдЖрд░рдВрднреАрдХрд░рдг рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ 9.2.0 рдпрд╛ рдЙрдЪреНрдЪрддрд░ рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐
UNION
ALL
рд╕рд╛рде рдПрдХ рддреЗрдЬрд╝ рд░реАрдлрд╝реНрд░реЗрд╢ рдХрд┐рдП рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рднреМрддрд┐рдХ рджреГрд╢реНрдп рддреИрдпрд╛рд░ рдХрд┐рдП рдЬрд╛ рд╕рдХреЗрдВред
рдореИрдВ рдУрд░реЗрдХрд▓ рдХреЗ рдкреНрд░рд╢рдВрд╕рдХреЛрдВ рдХреЛ рдирд╛рд░рд╛рдЬ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛, рд▓реЗрдХрд┐рди рдЙрдирдХреЗ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреА рд╕реВрдЪреА рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рддрдВрддреНрд░ рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдорд▓реЗ рдореЗрдВ рдХрд┐рд╕реА рддрд░рд╣ рдХреЗ рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╣рдЬрд╛рд░реЛрдВ рднрд╛рд░рддреАрдпреЛрдВ рдХреЛ, рдЬрд╣рд╛рдВ рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдЕрдкрдирд╛ рдзрд╛рдЧрд╛ рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА рдЧрдИ рдереА, рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдХрд┐рдпрд╛ред рдЕрд╕рд▓реА рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдПрдХ рдЦрджрд╛рди рдореЗрдВ рдЪрд▓рдиреЗ рдЬреИрд╕рд╛ рд╣реИред рдХрд┐рд╕реА рднреА рд╕рдордп, рдЖрдк рдПрдХ рдЦрджрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реНрдкрд╖реНрдЯ рд╕реАрдорд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдорд╛рд░рддреЗ рд╣реБрдПред рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдпрд╣ рднреА рдПрдХ рдЕрд▓рдЧ рдореБрджреНрджрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЗрд╕ рд▓реЗрдЦ рдХреЗ рджрд╛рдпрд░реЗ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИред
Microsoft SQL рд╕рд░реНрд╡рд░рдЕрддрд┐рд░рд┐рдХреНрдд рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ
рд╕реЗрдЯ рд╡рд┐рдХрд▓реНрдк рдФрд░ рдирд┐рдпрддрд╛рддреНрдордХ рдлрд╝рдВрдХреНрд╢рди рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:
CREATE INDEX
рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреГрд╢реНрдп рдХрд╛ рд╕реНрд╡рд╛рдореА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред- рдЬрдм рдЖрдк рдЗрдВрдбреЗрдХреНрд╕ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ
IGNORE_DUP_KEY
рд╡рд┐рдХрд▓реНрдк рдХреЛ рдмрдВрдж (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯрд┐рдВрдЧ) рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред - рдЯреЗрдмрд▓реНрд╕ рдХреЛ рджреЛ-рднрд╛рдЧ рдирд╛рдореЛрдВ, рд╕реНрдХреАрдорд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП ред рджреГрд╢реНрдп рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ рдЯреИрдмрд▓реЗрдирдо ред
- рджреГрд╢реНрдп рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдлрд╝рдВрдХреНрд╢рди рдХреЛ
WITH SCHEMABINDING
рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред - рджреГрд╢реНрдп рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдлрд╝рдВрдХреНрд╢рди рдХреЛ рджреЛ-рднрд╛рдЧ рдирд╛рдореЛрдВ, <рд╕реНрдХреАрдорд╛> рджреНрд╡рд╛рд░рд╛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП ред <рдлрд╝рдВрдХреНрд╢рди> ред
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдбреЗрдЯрд╛ рдПрдХреНрд╕реЗрд╕ рдЧреБрдг
NO SQL
рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдмрд╛рд╣рд░реА рдкрд╣реБрдБрдЪ рдЧреБрдг NO
рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред - рд╕рд╛рдорд╛рдиреНрдп рднрд╛рд╖рд╛ рд░рдирдЯрд╛рдЗрдо (рд╕реАрдПрд▓рдЖрд░) рдлрд╝рдВрдХреНрд╢рди рджреГрд╢реНрдп рдХреА рдЪреБрдирд┐рдВрджрд╛ рд╕реВрдЪреА рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреНрд▓рд╕реНрдЯрд░ рдЗрдВрдбреЗрдХреНрд╕ рдХреБрдВрдЬреА рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗред CLR рдлрд╝рдВрдХреНрд╢рди рджреГрд╢реНрдп рдХреЗ WHERE рдЦрдВрдб рдпрд╛ рджреГрд╢реНрдп рдореЗрдВ JOIN рдСрдкрд░реЗрд╢рди рдХреЗ ON рдЦрдВрдб рдореЗрдВ рдкреНрд░рдХрдЯ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
- рд╕реАрдПрд▓рдЖрд░ рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рд╕реАрдПрд▓рдЖрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдкрд░рд┐рднрд╛рд╖рд┐рдд рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдореЗрдВ рдирд┐рдореНрди рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рджрд┐рдЦрд╛рдП рдЧрдП рдЧреБрдгреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕реЗрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
- рджреГрд╢реНрдп рдХреЛ
WITH SCHEMABINDING
рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред - рджреГрд╢реНрдп рдХреЛ рдХреЗрд╡рд▓ рдЖрдзрд╛рд░ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рд╕рдВрджрд░реНрдн рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рджреГрд╢реНрдп рдХреЗ рд╕рдорд╛рди рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╣реИрдВред рджреГрд╢реНрдп рдЕрдиреНрдп рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рд╕рдВрджрд░реНрдн рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ рд╣реИред
- рджреГрд╢реНрдп рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ SELECT рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд Transact-SQL рддрддреНрд╡ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП:
1 рдЕрдиреБрдХреНрд░рдорд┐рдд рджреГрд╢реНрдп рдореЗрдВ рдлреНрд▓реЛрдЯ рдХреЙрд▓рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ; рд╣рд╛рд▓рд╛рдБрдХрд┐, рдРрд╕реЗ рдХреЙрд▓рдореЛрдВ рдХреЛ рдХреНрд▓рд╕реНрдЯрд░ рдЗрдВрдбреЗрдХреНрд╕ рдХреБрдВрдЬреА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред - рдпрджрд┐
GROUP BY
рдореМрдЬреВрдж рд╣реИ, рддреЛ VIEW рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ COUNT_BIG(*)
рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕рдореЗрдВ COUNT_BIG(*)
рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпреЗ GROUP BY
рдкреНрд░рддрд┐рдмрдВрдз рдХреЗрд╡рд▓ рдЕрдиреБрдХреНрд░рдорд┐рдд рджреГрд╢реНрдп рдкрд░рд┐рднрд╛рд╖рд╛ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред рдПрдХ рдХреНрд╡реЗрд░реА рдЕрдкрдиреА рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЬрдирд╛ рдореЗрдВ рдЕрдиреБрдХреНрд░рдорд┐рдд рджреГрд╢реНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреА рд╣реИ, рднрд▓реЗ рд╣реА рдпрд╣ рдЗрди GROUP BY
рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рд╕реЗ рд╕рдВрддреБрд╖реНрдЯ рди рд╣реЛред - рдпрджрд┐ рд╡реНрдпреВ рдбреЗрдлрд┐рдиреЗрд╢рди рдореЗрдВ рдПрдХ
GROUP BY
рдХреНрд▓реЙрдЬ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпреВрдирд┐рдХ рдХреНрд▓рд╕реНрдЯрд░реНрдб рдЗрдВрдбреЗрдХреНрд╕ рдХреА рдХреБрдВрдЬреА рдХреЗрд╡рд▓ GROUP BY
рдХреНрд▓реЙрдЬ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЙрд▓рдо рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░ рд╕рдХрддреА рд╣реИред
рдпрд╣рд╛рдВ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рднрд╛рд░рддреАрдп рдЖрдХрд░реНрд╖рд┐рдд рдирд╣реАрдВ рд╣реБрдП, рдХреНрдпреЛрдВрдХрд┐ рдЙрдиреНрд╣реЛрдВрдиреЗ рдпреЛрдЬрдирд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ "рд╣рдо рдмрд╣реБрдд рдХрдо, рд▓реЗрдХрд┐рди рдЕрдЪреНрдЫрд╛ рдХрд░реЗрдВрдЧреЗред" рдпрд╣реА рд╣реИ, рдЙрдирдХреЗ рдкрд╛рд╕ рдореИрджрд╛рди рдкрд░ рдЕрдзрд┐рдХ рдЦрджрд╛рдиреЗрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдирдХрд╛ рд╕реНрдерд╛рди рдЕрдзрд┐рдХ рдкрд╛рд░рджрд░реНрд╢реА рд╣реИред рд╕рдмрд╕реЗ рдЬреНрдпрд╛рджрд╛ рдЪрд┐рдВрддрд╛рдЬрдирдХ рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рд╕реАрдорд╛ рд╣реИ:
рджреГрд╢реНрдп рдХреЛ рдХреЗрд╡рд▓ рдЖрдзрд╛рд░ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рд╕рдВрджрд░реНрдн рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рджреГрд╢реНрдп рдХреЗ рд╕рдорд╛рди рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╣реИрдВред рджреГрд╢реНрдп рдЕрдиреНрдп рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рд╕рдВрджрд░реНрдн рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ рд╣реИред
рд╣рдорд╛рд░реА рд╢рдмреНрджрд╛рд╡рд▓реА рдореЗрдВ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рджреВрд╕рд░реЗ рднреМрддрд┐рдХреАрдХреГрдд рдлрд╝рдВрдХреНрд╢рди рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдХрд▓реА рдореЗрдВ рдкреВрд░реА рд╡рд┐рдЪрд╛рд░рдзрд╛рд░рд╛ рдХреЛ рдХрд╛рдЯ рджреЗрддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рд╕реАрдорд╛ (рдФрд░ рдкрд╛рда рдореЗрдВ рдЖрдЧреЗ) рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЛ рдмрд╣реБрдд рдХрдо рдХрд░рддреА рд╣реИ:
рджреГрд╢реНрдп рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ SELECT рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд Transact-SQL рддрддреНрд╡ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП:
OUTER JOINS, UNION, ORDER BY рдФрд░ рдЕрдиреНрдп рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рд╣реИрдВред рд╢рд╛рдпрдж рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рдЖрд╕рд╛рди рдерд╛ рдХрд┐ рдХреНрдпрд╛ рдирд╣реАрдВ рд╣реИ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХреНрдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕реВрдЪреА рд╢рд╛рдпрдж рдмрд╣реБрдд рдЫреЛрдЯреА рд╣реЛрдЧреАред
рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ: рдПрд▓рдЬреАрдкреАрдПрд▓ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ (рдЖрдИ рдиреЛрдЯ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ) рдбреАрдмреАрдПрдордПрд╕ рдмрдирд╛рдо рдХреЛрдИ рдирд╣реАрдВ (рддрдХрдиреАрдХреА рдХреЗ рдмрдЬрд╛рдп рдПрдХ рддрд╛рд░реНрдХрд┐рдХ рдХреЗ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде) рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╕реЗрдЯред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд░рд┐рд▓реЗрд╢рдирд▓ рд▓реЙрдЬрд┐рдХ рдореЗрдВ рдЗрд╕ рддрдВрддреНрд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╡рд░реНрдгрд┐рдд рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХреБрдЫ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИред
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? PostgreSQL рдХрд╛ рдЙрдкрдпреЛрдЧ "рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди" рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдВрджрд░ рдПрдХ рдЬрдЯрд┐рд▓ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд╣реИ рдЬреЛ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдБ
рд╕реНрд░реЛрдд рдХреЛрдб рд╣реИ ред рдФрд░ рдЗрдлреНрд╕ рдХреЗ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдХреЗ рд╕рд╛рде рд╣реЗрдпреБрд░рд┐рд╕реНрдЯрд┐рдХреНрд╕ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╕реЗрдЯ рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдорд╣реАрдиреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЛ рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдХреНрдпрд╛ рдпрд╣ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдпрд╣ рд╕рд╛рдмрд┐рдд рдХрд░рдирд╛ рдХрдард┐рди рд╣реИред рдореИрдВ рдХреЗрд╡рд▓ рдпрд╣ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрджрд┐ рдЖрдк рдЙрди рд╣рдЬрд╛рд░реЛрдВ рдЕрдиреБрд░реЛрдзреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдмрдбрд╝реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рд╣реИрдВ, рддреЛ рдФрд╕рддрди рд╡реЗ рдПрдХ рдЕрдЪреНрдЫреЗ рдбреЗрд╡рд▓рдкрд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдкреНрд░рднрд╛рд╡реА рд╣реИрдВред рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ SQL рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХрд┐рд╕реА рднреА рдХреНрд╡реЗрд░реА рдХреЛ рдЕрдзрд┐рдХ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рд╣рдЬрд╛рд░ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рд╕рд╛рде, рдЙрд╕рдХреЗ рдкрд╛рд╕ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рди рддреЛ рдкреНрд░реЗрд░рдгрд╛ рд╣реЛрдЧреА рдФрд░ рди рд╣реА рд╕рдордпред рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬреЛ рдЕрдм рдореИрдВ рдкреНрд░рднрд╛рд╡рд╢реАрд▓рддрд╛ рдХреЗ рдкреНрд░рдорд╛рдг рдХреЗ рд░реВрдк рдореЗрдВ рджреЗ рд╕рдХрддрд╛ рд╣реВрдВ, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ DBMS рдкрд░ рдмрдиреЗ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдХрдИ
ERP- рд╕рд┐рд╕реНрдЯрдо рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╣рдЬрд╛рд░реЛрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ MATERIALIZED рдлрд╝рдВрдХреНрд╢рди рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╣рдЬрд╛рд░реЛрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рдЯреЗрд░рд╛рдмрд╛рдЗрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕реИрдХрдбрд╝реЛрдВ-рд▓рд╛рдЦреЛрдВ рд░рд┐рдХреЙрд░реНрдб рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдПрдХ рдирд┐рдпрдорд┐рдд рджреЛрд╣рд░реЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рд░реНрд╡рд░ рдкрд░ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреЛрдИ рднреА
рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдФрд░ PostgreSQL рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдХреЗ, SQL рдХреНрд╡реЗрд░реА рд▓реЙрдЧрд┐рдВрдЧ рдХреЛ
рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдФрд░ рд╡рд╣рд╛рдВ рддрд░реНрдХ рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓реЗрдЦреЛрдВ рдореЗрдВ, рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдЖрдк рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рдХреИрд╕реЗ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдкрд░рд┐рд╡рд░реНрддрди рд╕рддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рднреА рдмрд╣реБрдд рдХреБрдЫред