рдкрд░рд┐рдЪрдпред рдЖрдзреБрдирд┐рдХ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдРрд╕реЗ рдХрд╛рд░реНрдп рд╣реИрдВ рдЬрд┐рдирдХреЗ рднреАрддрд░ рдПрдХ рд╣реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЬреНрд╡рд▓рдВрдд рдЙрджрд╛рд╣рд░рдг рд╕реНрдЯреЙрдХ рдХреЛрдЯреНрд╕, рдореМрд╕рдо рдХреА рд╕реНрдерд┐рддрд┐, рдиреЗрдЯрд╡рд░реНрдХ рдЯреНрд░реИрдлрд┐рдХ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рд╕рд┐рд╕реНрдЯрдо рд╣реИрдВред рдЗрдирдореЗрдВ рд╕реЗ рдХрдИ рдкреНрд░рдгрд╛рд▓рд┐рдпрд╛рдБ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреЗрдЯрд╛рдмреЗрд╕реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рдРрд╕реЗ рдЦрдВрдб рд╣реЛрддреЗ рд╣реИрдВ рдХрд┐ рдЗрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рд╕рд╣реА рд╕рдВрдХрд▓рди рдФрд░ рдЕрдиреБрдХреВрд▓рди рдмрд╕ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рдордХрд╛рдЬ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд▓реЗрдЦ рд╕рдмрд╕реЗ рдмрдбрд╝реЗ рд░реВрд╕реА рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░рджрд╛рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рдорд╛рд░реНрдЧ рд╕реЗ рдЧреБрдЬрд░рдиреЗ рд╡рд╛рд▓реЗ рдиреЗрдЯрд╡рд░реНрдХ рдЯреНрд░реИрдлрд╝рд┐рдХ рдкрд░ рдЖрдБрдХрдбрд╝реЛрдВ рд╕реЗ рдпреБрдХреНрдд
MySQL DBMS рдЯреЗрдмрд▓реЛрдВ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рдорд╛рдзрд╛рди (рдФрд░ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╡рд┐рдзрд┐рдпреЛрдВ рдХреА рддреБрд▓рдирд╛рддреНрдордХ рд╕рдордп рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ) рдХреЗ рддрд░реАрдХреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рдореБрдЦреНрдп рд░рд╛рдЙрдЯрд░ рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо рдХреА рддреАрд╡реНрд░рддрд╛ рдРрд╕реА рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдиреЗрдЯрд╡рд░реНрдХ рдЯреНрд░реИрдлрд┐рдХ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдЯреЗрдмрд▓реЛрдВ (рд░рд╛рдЙрдЯрд░
рдиреЗрдЯрдлреНрд▓реЛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЗрдЯрд╛ рдирд┐рд░реНрдпрд╛рдд рдореЗрдВ рд░рд╛рдЙрдЯрд░) рдореЗрдВ
рдЯреАрд╕реАрдкреА / рдЖрдИрдкреА рд▓реЗрдирджреЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд╕рддрди 400 рдорд┐рд▓рд┐рдпрди рд╕реЗ рдПрдХ рдЕрд░рдм рд░рд┐рдХреЙрд░реНрдб рддрдХ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред
MySQL рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд┐рдЧрд░рд╛рдиреА рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП DBMS рдХреЗ рд░реВрдк
рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧред рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдореЗрдВ рдкреНрд░рд╢реНрди рд╕реЗрдЯ рдкрд░ рд╕рдВрдЪрд╛рд▓рди рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВ, рдЬрдмрдХрд┐ рд╕реЗрдЯ рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдореЗрдВ рд╕рдордп рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдЕрдиреБрдкрд╕реНрдерд┐рдд рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдм рдХреБрдЫ рдЕрд▓рдЧ рд╣реИ: рдбреАрдмреАрдПрдордПрд╕ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрдореВрд░реНрдд рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВред рдирддреАрдЬрддрди, рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ (рдХрднреА-рдХрднреА рдмрд╣реБрдд рд▓рдВрдмрд╛) рд╕рдордп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рд╣рдореЗрд╢рд╛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ рдХреЗ рддрд░реАрдХреЗ рдЦреЛрдЬрдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛рдлреА рддреАрд╡реНрд░ рд╣реИ - рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдпреЗ рдкрде рдореМрдЬреВрдж рд╣реИрдВред рдореБрдЦреНрдп рдФрд░ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╡рд┐рдзрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдЕрдиреБрдХреНрд░рдорд┐рдд рдХрд░рдирд╛ рд╣реИ, рдЬреЛ рдЖрдкрдХреЛ рдЙрдирдХреЗ рджреЗрдЦрдиреЗ рдХреА рдЧрддрд┐ рдмрдврд╝рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рджреВрд╕рд░рд╛ рддрд░реАрдХрд╛ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдмрдирд╛рдирд╛ рд╣реИ рдЬреЛ рдирд┐рдпреЛрдЬрди рддрдВрддреНрд░ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рд╡рд┐рднрд┐рдиреНрди рдЧреНрд░рд╛рд╣рдХреЛрдВ рд╕реЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЕрдзрд┐рдХ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрдкрдХрд░рдгреЛрдВ рдореЗрдВ рдирд┐рд╣рд┐рдд рднреМрддрд┐рдХ рд╕реАрдорд╛рдУрдВ рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░рддреЗ рд╣реБрдП, рдЙрддреНрдкрд╛рджрдХрддрд╛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рднреА рд╕рдВрднрд╡ рд╣реИред
рдЕрдиреБрдХреНрд░рдорд┐рдд рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ ред рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдЬрд┐рд╕рдореЗрдВ рдХреЛрдИ рдЕрдиреБрдХреНрд░рдорд┐рдд рдирд╣реАрдВ рд╣реИрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХрд╛ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕реЗрдЯ рд╣реИ, рдФрд░ рд╡рд╛рдВрдЫрд┐рдд рд░рд┐рдХреЙрд░реНрдб рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рдЖрдИрдбреА рджреНрд╡рд╛рд░рд╛ рдХрд╣рддреЗ рд╣реИрдВ, рдЖрдкрдХреЛ рд╡рд╛рдВрдЫрд┐рдд рдореВрд▓реНрдп рдХреЗ рд╕рд╛рде рдореИрдЪ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреА рд╕рднреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рд╢реБрд░реБрдЖрдд рд╕реЗ рдЕрдВрдд рддрдХ рдкреВрд░реА рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рд╕рдордп рд▓реЗрдиреЗ рдФрд░ рдмреЗрд╣рдж рдЕрдХреНрд╖рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЕрдЧрд░ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдХреЗрд╡рд▓ рдХреБрдЫ рд░рд┐рдХреЙрд░реНрдб рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдЦреЛрдЬ рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рдВрддреБрд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВред
рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рд╡рд┐рдЪрд╛рд░рд╛рдзреАрди рдЗрдВрдЯрд░рдиреЗрдЯ рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рдЕрдзреАрдирд╕реНрде рд╕рдВрдЧрдардиреЛрдВ рд╡рд╛рд▓реА рддрд╛рд▓рд┐рдХрд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдЗрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ, рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рджреЛ рдлрд╝реАрд▓реНрдб рд╣реИрдВ - рд╕рдВрдЧрдарди рдЖрдИрдбреА (
org_id ) рдФрд░ рд╕рдВрдЧрдарди рдХрд╛ рдирд╛рдо (
org_name )ред
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдордиреЗ
org_id рдлрд╝реАрд▓реНрдб рдореЗрдВ рдПрдХ рдЗрдВрдбреЗрдХреНрд╕ рдЬреЛрдбрд╝рд╛ (рдЪрд┐рддреНрд░ 1 рджреЗрдЦреЗрдВ)ред рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╣реЛрддреА рд╣реИ, рдФрд░ рд╕реВрдЪрдХрд╛рдВрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЛ
org_id рдорд╛рди рджреНрд╡рд╛рд░рд╛ рдХреНрд░рдордмрджреНрдз рдХрд┐рдпрд╛
рдЬрд╛рддрд╛ рд╣реИ ред рдЕрдм, рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рднреА рд░рд┐рдХреЙрд░реНрдб рдХреЛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рд╣рдо рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЖрдк рдПрдХ рд╕рдВрдЧрдарди рд░рд┐рдХреЙрд░реНрдб (
рдЗрдВрд╕реНрдЯреАрдЯреНрдпреВрдЯ рдСрдл рдСрдЯреЛрдореЗрд╢рди рдПрдВрдб рдЗрд▓реЗрдХреНрдЯреНрд░реЛрдореЗрдЯреНрд░реА рдПрд╕рдмреА рдЖрд░рдПрдПрд╕ ) рдпреБрдХреНрдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рдвреВрдВрдврдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЕрджреНрд╡рд┐рддреАрдп рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ (
org_id ) рд╣реИ 2. рдЗрдВрдбреЗрдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рд╕реНрдХреИрди рдХрд░рдирд╛ рдПрдХ рдкрдВрдХреНрддрд┐ рджреЗрддрд╛ рд╣реИред рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХреЗ рдорд╛рдиреЛрдВ рдХреЛ рдЖрд░реЛрд╣реА рдХреНрд░рдо рдореЗрдВ рдХреНрд░рдордмрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдЧрд▓реЗ рдореВрд▓реНрдп (
org_id рдХреЗ рдмрд░рд╛рдмрд░
3 ) рдкрд░
рдкрд╣реБрдВрдЪрдХрд░ , рдЖрдк рд╕реНрдХреИрди рдХреЛ рдкреВрд░рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
3 рдХреЗ рдмрд╛рдж
, рд╣рдо рдЕрдм рд╡рд╛рдВрдЫрд┐рдд рдорд╛рди рдирд╣реАрдВ рдкрд╛рдПрдВрдЧреЗред рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рдорд╛рди рд╡рд┐рд╢реЗрд╖ рдПрд▓реНрдЧреЛрд░рд┐рджрдо (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдЦреЛрдЬ рд╡рд┐рдзрд┐) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдмреАрдЪ рдореЗрдВ рдХрд╣реАрдВ рд╕реНрдерд┐рдд рд╣реИрдВ, рддреЛ рдЖрдк рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд▓рдВрдмреЗ рд░реЗрдЦреАрдп рд╕реНрдХреИрди рдХреЗ рдмрд┐рдирд╛ рд╡рд╛рдВрдЫрд┐рдд рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдВрдЬреАрд░ред 1. рдПрдХ рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рд╕рд╣рднрд╛рдЧрд┐рддрд╛
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдЕрдиреБрдХреНрд░рдорд┐рдд рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдмрдирд╛рдХрд░ рдФрд░ рдХреНрд╡реЗрд░реА рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдХреЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рд╡реЗ рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд╕рдХреЗрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдРрд╕реЗ рдкреНрд░рд╢реНрди рд╣реИрдВ рдЬрд┐рдирдХреА рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЧрддрд┐ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдорджрдж рдирд╣реАрдВ рдХрд░рддреА рд╣реИ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рд╕реВрдЪрдХрд╛рдВрдХ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╕рднреА рдЕрднрд┐рд▓реЗрдЦреЛрдВ рдХреЗ рд▓рдЧрднрдЧ 1/10 рд╕реЗ рдЕрдзрд┐рдХ рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИ, рддреЛ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рдбрд┐рд╕реНрдХ рд╕реЗ рдЕрдиреБрдХреНрд░рдорд┐рдХ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп
рдПрдлрдЯреАрдПрд╕ (рдкреВрд░реНрдг рддрд╛рд▓рд┐рдХрд╛ рд╕реНрдХреИрди) рдкрд╕рдВрдж рдХрд░реЗрдЧрд╛ред рдбрд┐рд╕реНрдХ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╣рд┐рд╕реНрд╕реЛрдВ рд╕реЗ рдкрдврд╝рдиреЗ рд╕реЗ рдЕрдзрд┐рдХ рддреЗрдЬреА рд╕реЗ рд╣реЛрддрд╛ рд╣реИ (рдбрд┐рд╕реНрдХ рдкрд░ рд╕рд┐рд░ рдХреЛ рдШреБрдорд╛рддреЗ рд╣реБрдП - рдПрдХ "рдорд╣рдВрдЧрд╛" рдСрдкрд░реЗрд╢рди рд╣реИ)ред
рдЖрд╢рд╛рд╡рд╛рджреА рдХреЛ
FORCE INDEX рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдордЬрдмреВрд░" рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рдЧрддрд┐ рдореЗрдВ рд▓рд╛рдн рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рдЯреЗрдмрд▓реНрд╕ рдЗрддрдиреЗ рдмрдбрд╝реЗ рднреА рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЗрдВрдбреЗрдХреНрд╕ рдмрдирд╛рдирд╛ рдЕрдВрддрд░рд┐рдХреНрд╖ рдХреА рджреГрд╖реНрдЯрд┐ рд╕реЗ рдпрд╛ рдСрдкрд░реЗрд╢рди рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП рдЕрд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрдВрдбреЗрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рддрд░реАрдХреЗ рд╕реЗ "рднреБрдЧрддрд╛рди" рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЗрдВрдбреЗрдХреНрд╕ рдореЗрдВ рдЕрдкрдиреА рдХрдорд┐рдпрд╛рдВ рд╣реИрдВред рдЙрдирдореЗрдВ рд╕реЗ рдЬреНрдпрд╛рджрд╛рддрд░ рдирдЧрдгреНрдп рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдиреЗ рд▓рд╛рдпрдХ рд╣реИред
рдЕрдиреБрдХреНрд░рдорд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдиреБрдХрд╕рд╛рдиред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЕрдиреБрдХреНрд░рдорд┐рдд рдбреЗрдЯрд╛ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдХреЛ рдЧрддрд┐ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдиреБрдХреНрд░рдорд┐рдд рдХреЙрд▓рдо рдореЗрдВ рдбреЗрдЯрд╛ рдЬреЛрдбрд╝рдиреЗ, рд╣рдЯрд╛рдиреЗ рдФрд░ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рдзреАрдорд╛ рдХрд░ рджреЗрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЬрдм рднреА рдЖрдк рдРрд╕реА рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдмрджрд▓рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣рд╛рдВ рд╕рдВрдмрдВрдз рд╕рд░рд▓ рд╣реИ: рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЬрд┐рддрдиреЗ рдЕрдзрд┐рдХ рдЕрдиреБрдХреНрд░рдорд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдЙрддрдиреЗ рд╣реА рдЕрдзрд┐рдХ рд░рд┐рдХреЙрд░реНрдб рдкрд░ рд╕рдВрдЪрд╛рд▓рди рдХреА рдордВрджреА рд╣реЛрддреА рд╣реИред
рджреВрд╕рд░реЗ, рдЗрдВрдбреЗрдХреНрд╕ рдлрд╝рд╛рдЗрд▓ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбрд┐рд╕реНрдХ рд╕реНрдерд╛рди рд▓реЗрддреА рд╣реИ (рдпрд╣ рдЗрдВрдбреЗрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реНрдерд╛рди рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕рд╛рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИ)ред рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЗрдВрдбреЗрдХреНрд╕ рдмрдирд╛рддреЗ рд╕рдордп, рдРрд╕реА рдЗрдВрдбреЗрдХреНрд╕ рдлрд╛рдЗрд▓ рдХрд╛ рдЖрдХрд╛рд░ рддреЗрдЬреА рд╕реЗ рдЕрдкрдиреЗ рдЕрдзрд┐рдХрддрдо рдЖрдХрд╛рд░ рддрдХ рдкрд╣реБрдВрдЪ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд┐рдирд╛ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдЙрдирдХреЗ рдЕрдзрд┐рдХрддрдо рдЖрдХрд╛рд░ рддрдХ рддреЗрдЬреА рд╕реЗ рдкрд╣реБрдВрдЪрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИред
- MyISAM рдкреНрд░рдХрд╛рд░ рдХреА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рдЕрддреНрдпрдзрд┐рдХ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХрд┐рд╕реА рдбреЗрдЯрд╛ рдлрд╝рд╛рдЗрд▓ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдкрдиреЗ рдЕрдзрд┐рдХрддрдо рдЖрдХрд╛рд░ рддрдХ рддреЗрдЬрд╝реА рд╕реЗ рдкрд╣реБрдВрдЪ рд╕рдХрддреА рд╣реИ (рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред
- BDB рдЯреЗрдмрд▓ рдПрдХ рдлрд╛рдЗрд▓ рдореЗрдВ рдбреЗрдЯрд╛ рдФрд░ рдЗрдВрдбреЗрдХреНрд╕ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЯреЗрдмрд▓ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдзрд┐рдХрддрдо рдЖрдХрд╛рд░ рддрдХ рддреЗрдЬрд╝реА рд╕реЗ рдкрд╣реБрдВрдЪрдиреЗ рдХрд╛ рдХрд╛рд░рдг рд╣реИред
- InnoDB рдЯреЗрдмрд▓ рдХреЛ рд╕рд┐рдВрдЧрд▓ рдЯреЗрдмрд▓ рд╕реНрдкреЗрд╕ рдореЗрдВ рд╣реЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм рдЗрдВрдбреЗрдХреНрд╕ рдЬреЛрдбрд╝реЗ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЯреЗрдмрд▓ рд╕реНрдкреЗрд╕ рдХреЗ рд▓рд┐рдП рдЖрд╡рдВрдЯрд┐рдд рдбрд┐рд╕реНрдХ рд╕реНрдерд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рддреЗрдЬреА рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ MySQL рд╕рдВрд╕реНрдХрд░рдг 3.23.6 рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ (рдмрд╛рдж рдореЗрдВ
рдкреАрдкреА рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд) рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЪрд░ рдХреЛ рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рдмрд╛рдж рдореЗрдВ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рддрдм рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рдЖрдЧреЗ рдХреЗ рдкреНрд░рд╢реНрдиреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдЧрдгрдирд╛ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдмрд╕реЗ рдХрдо рдХреАрдордд рд╡рд╛рд▓реЗ рдЙрддреНрдкрд╛рджреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдирд┐рдореНрди рдХрд╛рд░реНрдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
SELECT @min_price:=MIN(price) FROM shop; SELECT * FROM shop WHERE price=@min_price;
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░
@var_name рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рдФрд░ рдкреВрд░реНрдгрд╛рдВрдХ (
int ), рдЖрдВрд╢рд┐рдХ (
рд╡рд╛рд╕реНрддрд╡рд┐рдХ ) рдФрд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ (
рд╕реНрдЯреНрд░рд┐рдВрдЧ ) рдкреНрд░рдХрд╛рд░ рдХреЗ рдорд╛рди рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рд╡реИрд░рд┐рдПрдмрд▓ рдХрд╛ рдорд╛рди рдЕрд╕рд╛рдЗрди рдХрд░рдирд╛ SET рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ (
SET @var1='RUS'
),
SELECT рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ (
SELECT 'RUS' INTO @var1;
) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпрд╛ ": = рдСрдкрд░реЗрдЯрд░" ("=" рд╕рдорд╛рдирддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
@ var1: = 72 )ред

рдПрдХ рдЕрд╕рд┐рдВрдЪрд┐рдд рдЪрд░
NULL рд╣реИ ред
рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЕрдиреНрдпрдерд╛ рдХреНрд╡реЗрд░реА рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ рдпрд╣ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдПрдХ рдЧрд▓рдд рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг , рдЪрд░реНрдЪрд╛ ред
рдкреАрдкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдн ред рдЪрд░ рдкрд░рд┐рдгрд╛рдореЛрдВ рдореЗрдВ рдордзреНрдпрд╡рд░реНрддреА рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдмрдЪрд╛рдиреЗ рдФрд░ рдЖрдЧреЗ рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рдЙрдиреНрд╣реЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЖрдкрдХреЛ рдХреБрдЫ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдореЗрдВ рдХрд╛рдлреА рддреЗрдЬреА рд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ (рдХрдо рдЯреЗрдмрд▓ рд╕реНрдХреИрди рдХреЗ рдХрд╛рд░рдг), рдФрд░ рдЖрдкрдХреЛ рдЙрди рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рднреА рджреЗрддрд╛ рд╣реИ рдЬреЛ рдорд╛рдирдХ рд╕рдВрдмрдВрдзрдкрд░рдХ рдореЙрдбрд▓ рдореЗрдВ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рдпрд╛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред
рдкреАрдкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдиреБрдХрд╕рд╛рдиред- рдЕрдиреНрдп DBMSs рдХреЗ рд▓рд┐рдП рдЬрдЯрд┐рд▓ рдкреЛрд░реНрдЯреЗрдмрд┐рд▓рд┐рдЯреА (рдкреАрдкреА рддрдВрддреНрд░ MySQL DBMS рдХреЗ рдврд╛рдВрдЪреЗ рдХреЗ рднреАрддрд░ рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЙрдбрд▓ рдкрд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдРрдб-рдСрди рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ)ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣ рдХрдореА рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рд╕рдордп рд╕рднреА рдкреНрд░рдореБрдЦ DBMS рдХреЗ ANSI SQL рдорд╛рдирдХ рд╕реЗ рдЙрдирдХреЗ рд╡рд┐рдЪрд▓рди рд╣реИрдВред
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдЬрдЯрд┐рд▓ рдХреНрд╡реЗрд░реА рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреНрд░рдо рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░реЗрдЧрд╛, рдЬрд┐рд╕реЗ MySQL рдЕрдиреБрдХреВрд▓рдХ (рдпрджрд┐ STRAIGHT_JOIN рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рджреНрд╡рд╛рд░рд╛ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ резред рдиреЗрдЯрд╡рд░реНрдХ рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░реНрдп рдЗрдВрдЯрд░рдиреЗрдЯ рдкреНрд░рджрд╛рддрд╛рдУрдВ рд╕реЗ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рд╕рдВрдЪрд╛рд░ рдЪреИрдирд▓реЛрдВ рдХреА рд▓реЛрдбрд┐рдВрдЧ рдЪреЛрдЯрд┐рдпреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рд╣реИ (рджреЗрдЦреЗрдВред 2)ред

рдЕрдВрдЬреАрд░ред 2. рдЧреНрд░рд╛рдл рджрд┐рдЦрд╛ рдЪреИрдирд▓ рд▓реЛрдбрд┐рдВрдЧ рдЧрддрд┐рд╢реАрд▓рддрд╛
рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдЖрдиреЗ рд╡рд╛рд▓реЗ рдФрд░ рдмрд╛рд╣рд░ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдФрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдЪреИрдирд▓ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рддрд╛рд▓рд┐рдХрд╛ рдкреНрд░рдХрд╛рд░
MyISAM рд╣реИ ред
рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рдПрдХ рд╕рд░рд▓реАрдХреГрдд рд░реВрдк:
рдЯреА (рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк) | src (рднреЗрдЬреЗ рдЧрдП рдмрд╛рдЗрдЯ рдХреА рд╕рдВрдЦреНрдпрд╛) | dst (рдкреНрд░рд╛рдкреНрдд рдмрд╛рдЗрдЯреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛) |
рдЖрд╡рдХ рдореЗрдВ рдЕрдзрд┐рдХрддрдо рдЫрд▓рд╛рдВрдЧ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП (рд╕рд╛рде рд╣реА рд╕рд╛рде рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ рднреА рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ
src рдХреНрд╖реЗрддреНрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ) рдЯреНрд░реИрдлрд╝рд┐рдХ, рдЯреА
рдкреНрд░рд┐рд╡реЗрдВрдЯ рдорд╛рд░реНрдХреНрд╕ (рдкрд┐рдЫрд▓реЗ рдЪрд░рдг рдореЗрдВ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк) рдФрд░ рдЯреА
рд╡рдХреНрд░ (рдЕрд╕реНрдерд╛рдпреА) рдХреЗ рдЕрдиреБрд░реВрдк
рдбреАрдПрд╕рдЯреА рдХреНрд╖реЗрддреНрд░ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рддреЗ рд╣реБрдП, рдкреВрд░реА рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рд╕реНрдХреИрди рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рд╡рд░реНрддрдорд╛рди рдЪрд░рдг рдореЗрдВ рд▓реЗрдмрд▓)ред рдпрд╣ рдореБрдЦреНрдп рдХрдард┐рдирд╛рдИ рд╣реИ: рд░рд┐рд▓реЗрд╢рдирд▓ рдореЙрдбрд▓ рдХреЗ рдврд╛рдВрдЪреЗ рдХреЗ рднреАрддрд░, рдЯреЗрдмрд▓ рдХреЛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рд╕реАрдзреЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдкрд┐рдЫрд▓реЗ рдореВрд▓реНрдп рдХреЛ рдпрд╛рдж рд░рдЦрдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред рдЗрд╕рдХреА рдЧрдгрдирд╛ рдПрдХ рдЙрдкрд╢рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ
SELECT dst FROM t t2 WHERE t2.t<t1.t ORDER BY t2.t DESC LIMIT 1;
рдЬрд╣рд╛рдБ
t1.t рдЯрд╛рдЗрдо рд╕реНрдЯреИрдореНрдк рдХрд╛ рд╡рд░реНрддрдорд╛рди рдореВрд▓реНрдп рд╣реИ), рд▓реЗрдХрд┐рди рдпрд╣ рдбрд┐рдЬрд╝рд╛рдЗрди рдЕрдиреБрд░реЛрдз рдХреЛ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдХрд░рддрд╛ рд╣реИ, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░,
O (n) рд╕реЗ рдЕрдиреБрд░реЛрдз рдХреА рдЬрдЯрд┐рд▓рддрд╛ O (n
2 ) рддрдХ рдмрдврд╝ рдЬрд╛рддреА рд╣реИ (рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдмрд╛рд░ рд╕реНрдЯреИрдореНрдк рдХреЗ рд▓рд┐рдП рдкрд┐рдЫрд▓реЗ рдПрдХ рдХреА рдЧрдгрдирд╛ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ) рд╕рдВрдкреВрд░реНрдг рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рд╕реНрдХреИрди рдХрд░рдирд╛), рдЬреЛ рдХреНрд╡реЗрд░реА рдХреА рдЧрддрд┐ рдХреЛ рдмрд╣реБрдд рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдлрд╝реАрд▓реНрдб
рдЯреА рдкрд░ рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рд╕реВрдЪрдХрд╛рдВрдХ рд╣реИ, рддреЛ рдЧрдгрдирд╛ рдмрд╣реБрдд рддреЗрдЬрд╝ рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдпрд╣ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдХреЛрдИ рд▓рд╛рдкрддрд╛ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдирд╣реАрдВ рд╣реИрдВ (рдФрд░ рдРрд╕реА рдЖрджрд░реНрд╢ рд╕реНрдерд┐рддрд┐ рд▓рдЧрднрдЧ рдХрднреА рд╕рд╛рдордиреЗ рдирд╣реАрдВ рдЖрддреА рд╣реИ), рдФрд░ рдкрд┐рдЫрд▓реЗ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреА рдЧрдгрдирд╛ рдХреЗрд╡рд▓ рд╡рд╛рдВрдЫрд┐рдд рдХреЛ рдШрдЯрд╛рдХрд░ рдХреА рдЬрд╛рддреА рд╣реИ рд╡рд░реНрддрдорд╛рди рд╕реЗ рдЕрдВрддрд░рд╛рд▓ (рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдирдореВрдирд╛ рдмрд╣реБрдд рддреЗрдЬ рд╣реИ)ред рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдкрд┐рдЫрд▓реЗ рдЪрд░рдг рдореЗрдВ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЗ рдореВрд▓реНрдп рдХреА рдЧрдгрдирд╛ рдПрдХ рдЙрдкрд╢реНрд░реЗрдгреА рджреНрд╡рд╛рд░рд╛ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ рд╕рдЦреНрдд рд╕рдорд╛рдирддрд╛ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдЧреИрд░-рд╕рдЦреНрдд рдкрд░, рдЫрдБрдЯрд╛рдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреА рдХреНрд╡реЗрд░реА, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рдмрд╣реБрдд рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдХрд╛рдо рдХрд░рддреА рд╣реИред рд╕рдВрдмрдВрдзрдкрд░рдХ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рддреЗрдЬ рдбреЗрдЯрд╛ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ
рдЙрдкрд╢реНрд░реЗрдгреА рдХреЛ
рдЯреА рдлрд╝реАрд▓реНрдб рдкрд░ рдПрдХ рд╕реВрдЪрдХрд╛рдВрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рдПрдХ рдмрд╛рд╣рд░реА рдХреНрд╡реЗрд░реА
dst рдлрд╝реАрд▓реНрдб рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рддрд╛рд▓рд┐рдХрд╛ (
t ,
dst ) рдлрд╝реАрд▓реНрдб рдкрд░ рдПрдХ рд╕рдордЧреНрд░ рд╕реВрдЪрдХрд╛рдВрдХ
t_dst рд╣реИ ред
рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЙрдбрд▓ рдХреЗ рднреАрддрд░ рдХреНрд╡реЗрд░реА рд╡рд┐рдХрд▓реНрдк:
SELECT MAX(t1.dst-(SELECT dst FROM t t2 WHERE t2.t<t1.t ORDER BY t2.t DESC LIMIT 1)) FROM t t1;
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдХреНрд╡реЗрд░реА рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдкрдХреЛ рддрд╛рд▓рд┐рдХрд╛ n + 1 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдирд╛ рд╣реЛрдЧрд╛ред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ рдЖрдкрдХреЛ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдкрд╛рд╕ рдореЗрдВ рдРрд╕реА рдХреНрд╡реЗрд░реА рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рдПрдХ рдХреНрд╡реЗрд░реА рдХреЗ рд▓рд┐рдП рдЬреЛ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдкрд╛рд╕ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рд╕рдордп рдХреЗ рдХреНрд░рдо рдХреЗ рдЖрд░реЛрд╣реА рдХреНрд░рдо рдореЗрдВ рдЪреБрдирд╛ рдЧрдпрд╛ рд╣реЛред
рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрд░реАрдХреЛрдВ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- рддрд╛рд▓рд┐рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдбреЗрдЯрд╛ (рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ) рдХреЛ
ALTER TABLE `t` ORDER BY `t`
( MyISAM рдкреНрд░рдХрд╛рд░ рдХреЗ рдЯреЗрдмрд▓ рдХреЗ рд▓рд┐рдП, рдПрдХ рдХрд╛рдо рдХрд░ рд╕рдорд╛рдзрд╛рди)ред рдпрджрд┐ рдбреЗрдЯрд╛ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдбрд╛рд▓рд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдХрдИ рд░рд┐рдХреЙрд░реНрдб рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рд╣рдЯрд╛ рджрд┐рдП рдЧрдП рдереЗ, рддреЛ рдЖрдкрдХреЛ OPTIMIZE TABLE `t`
рд╕рд╛рде рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдбреАрдлрд╝реНрд░реИрдЧреНрдореЗрдиреНрдЯ рдХрд░рдирд╛ OPTIMIZE TABLE `t`
ред рдЪреВрдВрдХрд┐ рдбреЗрдЯрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╕реЙрд░реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП IGNORE INDEX(t_dst)
рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрд╡реЗрд░реА рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдбреЗрдЯрд╛ рдЗрдВрдбреЗрдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рдЪрдпрдирд┐рдд рди рд╣реЛ, рд▓реЗрдХрд┐рди рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗред - рдЪрдпрди рдпреЛрдЧреНрдп рдкрд░ рдПрдХ рд╕рдордЧреНрд░ рд╕реВрдЪрдХрд╛рдВрдХ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ ( WHERE / ORDER BY / GROUP BY рдореЗрдВ рдкреНрд░рдпреБрдХреНрдд) рдлрд╝реАрд▓реНрдб рдЖрдкрдХреЛ рдЗрд╕ рдкрд░ рдбреЗрдЯрд╛ (рдЗрдВрдбреЗрдХреНрд╕ рджреНрд╡рд╛рд░рд╛) рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ - рдЕрд░реНрдерд╛рдд, рдЪрдпрдирд┐рдд рдлрд╝реАрд▓реНрдб рдХреЗ рдЖрд░реЛрд╣реА рдХреНрд░рдо рдореЗрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдлрд╝реАрд▓реНрдб ( t , dst ) рдкрд░ рдПрдХ рд╕рдордЧреНрд░ рд╕реВрдЪрдХрд╛рдВрдХ t_dst рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐, t рдЪрд┐рд╣реНрди рдХреЗ рдЖрд░реЛрд╣реА рдХреНрд░рдо рдореЗрдВ рдбреЗрдЯрд╛ рдирдореВрдирд╛ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рдХреЗ рд▓рд┐рдП, рдЬрдм рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ
FORCE INDEX(t_dst)
рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред - рддрд╛рд▓рд┐рдХрд╛ t рд╕реЗ рдбреЗрдЯрд╛ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдЙрд╕рд╕реЗ рдмрдирд╛рдП рдЧрдП рдПрдХ рдЧрддрд┐рд╢реАрд▓ рдЪрдпрди рд╕реЗ, рдЖрд░реЛрд╣реА рдлрд╝реАрд▓реНрдб t (рдХреНрд░рдордмрджреНрдз
SELECT * FROM `t` ORDER BY `t`
) рджреНрд╡рд╛рд░рд╛ рд╕реЙрд░реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ред
рдПрдХ рдкрд╛рд╕ рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЗрд╕ рддрдереНрдп рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ рдХрд┐ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдкрд┐рдЫрд▓реА рдкрдВрдХреНрддрд┐ рдкрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ рдореЗрдВ dst рд╕реНрддрдВрдн рдХрд╛ рдореВрд▓реНрдп рдпрд╛рдж рд░рдЦрдирд╛ рд╕рдВрднрд╡ рд╣реИ рдФрд░ рддрд╛рд▓рд┐рдХрд╛ рдХреА рд╡рд░реНрддрдорд╛рди рдкрдВрдХреНрддрд┐ рдкрд░ dst рдорд╛рди рдХреЗ рд╕рд╛рде рдЗрд╕рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВред
рдПрдХ рдХреНрд╡реЗрд░реА рдЬреЛ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреА рд╣реИ рдЬрд╣рд╛рдВ рдбреЗрдЯрд╛ рд╕рд╣реА рдХреНрд░рдо рдореЗрдВ рд╣реИред
SET @data=NULL, @next_data=NULL, @max_value=0; SELECT @next_data:=`dst` `nextdata`,IF (@next_data- @data>@max_value, @max_value:=@next_data-@data, @max_value), @data:=dst FROM `t` IGNORE INDEX(t_dst); SELECT @max_value;
рдПрдХ рдХреНрд╡реЗрд░реА рдЬреЛ рд╕реВрдЪрдХрд╛рдВрдХ рджреНрд╡рд╛рд░рд╛ рд╡рд╛рдВрдЫрд┐рдд рдХреНрд░рдо рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рдЪрдпрди рдХрд░рддреА рд╣реИ:
SET @data=NULL, @next_data=NULL, @max_value=0; SELECT @next_data:=`dst` `nextdata`,IF (@next_data- @data>@max_value, @max_value:=@next_data-@data, @max_value), @data:=dst FROM `t` FORCE INDEX(t_dst); SELECT @max_value;
рдПрдХ рдХреНрд╡реЗрд░реА рдЬреЛ рднреНрд░реВрдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди рдбреЗрдЯрд╛ рдХреЛ рд╕реЙрд░реНрдЯ рдХрд░рддреА рд╣реИ:
SET @data=NULL, @next_data=NULL, @max_value=0; SELECT @next_data:=`dst` `nextdata`, IF (@next_data - @data > @max_value, @max_value:=@next_data-@data, @max_value), @data:=dst FROM (SELECT * FROM `t` ORDER BY t) t1; SELECT @max_value;
рддрд╛рд▓рд┐рдХрд╛ 1 рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЕрд╡рдзрд┐ (рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдПрдХ рдЕрд▓рдЧ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде) рджрд┐рдЦрд╛рддреА рд╣реИред рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЕрдВрддрд░рд╛рд▓ рдХреА рд▓рдВрдмрд╛рдИ рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реЛрддреА рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХ рдорд┐рдирдЯ рдХреЗ рдЕрдВрддрд░рд╛рд▓ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЕрд╡рдзрд┐ | рдкрдВрдХреНрддрд┐ рдХреА рдЧрд┐рдирддреА | рд╕рдВрдмрдВрдзрдкрд░рдХ рдХреНрд╡реЗрд░реА рд╡рд┐рдХрд▓реНрдк | рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдз (рдЕрдиреБрдХреНрд░рдорд┐рдХ рдирдореВрдирд╛рдХрд░рдг) | рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдз (рдкреНрд░рдЧрддрд┐ рдореЗрдВ рдЫрдВрдЯрдиреА) | рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдз (рд╕реВрдЪрдХрд╛рдВрдХ рджреНрд╡рд╛рд░рд╛ рдирдореВрдирд╛рдХрд░рдг рдХреЗ рджреНрд╡рд╛рд░рд╛ рдЫрдВрдЯрдиреА рдХреА рдЬрд╛рддреА рд╣реИ) |
1 рджрд┐рди | 1,440 | 2.67 рд╕реЗрдХрдВрдб | 0.00 рд╕реЗрдХрдВрдб | 0.00 рд╕реЗрдХрдВрдб | 0.00 рд╕реЗрдХрдВрдб |
1 рд╕рдкреНрддрд╛рд╣ | 10,080 | 2 рдорд┐рдирдЯ 11 рд╕реЗрдХрдВрдб | 0.00 рд╕реЗрдХрдВрдб | 0.01 рд╕реЗрдХрдВрдб | 0.02 рд╕реЗрдХрдВрдб |
1 рдорд╣реАрдирд╛ | 43,200 | 40 рдорд┐рдирдЯ 1 рд╕реЗрдХрдВрдб | 0.02 рд╕реЗрдХрдВрдб | 0.04 рд╕реЗрдХрдВрдб | 0.07 рд╕реЗрдХрдВрдб |
1 рд╕рд╛рд▓ | 525.600 | рддреАрди рджрд┐рди рд╕реЗ рдЬреНрдпрд╛рджрд╛ | 0.54 рд╕реЗрдХрдВрдб | 0.68 рд╕реЗрдХрдВрдб | 0.94 рд╕реЗрдХрдВрдб |
рддрд╛рд▓рд┐рдХрд╛ 1 рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ 1 рд╕реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреА рдЕрд╡рдзрд┐ рдХрд╛ рдорд╛рдкрдиред
рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрди рдЕрд╡рдзрд┐ рдХреЗ рдорд╛рдкрди рдХреЗ рдкрд░рд┐рдгрд╛рдо рдЗрд╕ рдмрд╛рдд рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХреНрд╡реЗрд░реА рдХрд╛ рд╕рдВрдмрдВрдзрдкрд░рдХ рд╕рдВрд╕реНрдХрд░рдг рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдЕрдиреБрдкрдпреБрдХреНрдд рд╣реИ, рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ рд╡рд╛рд▓реЗ рд╕рднреА рдХреНрд╡реЗрд░реА рд╡реЗрд░рд┐рдПрдВрдЯ рдХреЛ рдПрдХ рд╕реЗрдХрдВрдб рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рддреЗрдЬреА рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИред
рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ 2ред рдЪреИрдирд▓ рд▓реЛрдб рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдордп рдЕрд╡рдзрд┐ (рдХрдИ рд╕реЗрдХрдВрдб, рдХрдИ рдорд┐рдирдЯ) рдХреЗ рд▓рд┐рдП рд▓реЛрдб рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, 5 рд╕реЗрдХрдВрдб рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд╕рд╛рде рдПрдХ рдЕрдВрддрд░рд╛рд▓ рдЪреБрдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрд┐рд╕ рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдбреЗрдЯрд╛ рдЪреБрдирд╛ рдЧрдпрд╛ рд╣реИ, рдЙрд╕рдХреА рд╕рдВрд░рдЪрдирд╛ рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ 1 рдореЗрдВ рд╕рдорд╛рди рд╣реИ, рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк
рдЯреА рдкреНрд░рдХрд╛рд░
TARERAMP рдХрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдПрдХ рд╕рдВрдмрдВрдзрдкрд░рдХ рдХреНрд╡реЗрд░реА рд╕рдореВрд╣ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рдЪрдпрди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреА рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдкрд░рд┐рдгрд╛рдо рдЫрд╛рдБрдЯрддреЗ рд╣реИрдВ:
SELECT `t`-INTERVAL(UNIX_TIMESTAMP(`t`)%5) SECOND AS s5,SUM(`dst`) AS `d` FROM `t` GROUP BY s5 ORDER BY `t
рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдкреВрд░реНрдг рдкрд╛рд╕ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдХреНрд╡реЗрд░реА рдкрд░рд┐рдгрд╛рдо рдХреЗ рд╕рдореВрд╣реАрдХрд░рдг рдФрд░ рдЫрдВрдЯрд╛рдИ рдХреЛ рднреА рд▓рд╛рдЧреВ рдХрд░рддреА рд╣реИред
рд╕реНрдкрд╖реНрдЯ рд╕рдореВрд╣ рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рдХрдо рднрд╛рд░ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рд╣реА рдХреНрд╡реЗрд░реА рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП, рдЫрдВрдЯрд╛рдИ (рдмрд╢рд░реНрддреЗ рдХрд┐ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд▓рд╛рдкрддрд╛ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рди рд╣реЛрдВ)ред
рдПрдХ рдХреНрд╡реЗрд░реА рдЬреЛ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреА рд╣реИ рдЬрд╣рд╛рдВ рдбреЗрдЯрд╛ рд╕рд╣реА рдХреНрд░рдо рдореЗрдВ рд╣реИ:
SET @c:=0; SELECT `t`, `dst` FROM ( SELECT `t`, IF(UNIX_TIMESTAMP(`t`) % 5, @c := @c+`dst`, @c := `dst`) AS `dst`, IF ((UNIX_TIMESTAMP(`t`) + 1) % 5, 1,0) AS `mark` FROM `t` IGNORE INDEX(`t_dst`)) t1 WHERE mark = 0;
рдПрдХ рдХреНрд╡реЗрд░реА рдЬреЛ рд╕реВрдЪрдХрд╛рдВрдХ рджреНрд╡рд╛рд░рд╛ рд╡рд╛рдВрдЫрд┐рдд рдХреНрд░рдо рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рдЪрдпрди рдХрд░рддреА рд╣реИ:
SET @c:=0; SELECT `t`, `dst` FROM ( SELECT `t`, IF(UNIX_TIMESTAMP(`t`) % 5, @c := @c+`dst`, @c := `dst`) AS `dst`, IF ((UNIX_TIMESTAMP(`t`) + 1) % 5, 1,0) AS `mark` FROM `t` FORCE INDEX(`t_dst`)) t1 WHERE mark = 0;
рдПрдХ рдХреНрд╡реЗрд░реА рдЬреЛ рднреНрд░реВрдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди рдбреЗрдЯрд╛ рдХреЛ рд╕реЙрд░реНрдЯ рдХрд░рддреА рд╣реИ:
SET @c:=0; SELECT `t`, `dst` FROM ( SELECT `t`, IF(UNIX_TIMESTAMP(`t`) % 5, @c := @c+`dst`, @c := `dst`) AS `dst`, IF ((UNIX_TIMESTAMP(`t`) + 1) % 5, 1,0) AS `mark` FROM ( SELECT * FROM `t` ORDER BY `t`) t1) t2 WHERE mark = 0;
рдЙрдк- рднрд╛рдЧ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ, рдкрд╣рд▓реЗ
@ @ рдЪрд░ рдореЗрдВ рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЕрдЧрд░ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдкрд╛рдВрдЪ-рд╕реЗрдХрдВрдб рдХреЗ рдЕрдВрддрд░рд╛рд▓ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИ, рддреЛ рдХрд╛рдЙрдВрдЯрд░ рд╢реВрдиреНрдп рдкрд░ рд░реАрд╕реЗрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░
рдЪрд┐рд╣реНрди рдХреЛ рдорд╛рди рдЕрд╕рд╛рдЗрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдЧрд▓рд╛, рдмрд╛рд╣рд░реА рдХреНрд╡реЗрд░реА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ
рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддреА рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП
рдЪрд┐рд╣реНрди 1, рдЕрд░реНрдерд╛рдд рд╡рд╛рдВрдЫрд┐рдд рд╣реИред
рддрд╛рд▓рд┐рдХрд╛ 2 рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЕрд╡рдзрд┐ (рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдПрдХ рдЕрд▓рдЧ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде) рджрд┐рдЦрд╛рддреА рд╣реИред
рдЕрд╡рдзрд┐ | рдкрдВрдХреНрддрд┐ рдХреА рдЧрд┐рдирддреА | рд╕рдВрдмрдВрдзрдкрд░рдХ рдХреНрд╡реЗрд░реА рд╡рд┐рдХрд▓реНрдк | рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдз (рдЕрдиреБрдХреНрд░рдорд┐рдХ рдирдореВрдирд╛рдХрд░рдг) | рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдз (рдкреНрд░рдЧрддрд┐ рдореЗрдВ рдЫрдВрдЯрдиреА) | рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдз (рд╕реВрдЪрдХрд╛рдВрдХ рджреНрд╡рд╛рд░рд╛ рдирдореВрдирд╛рдХрд░рдг рдХреЗ рджреНрд╡рд╛рд░рд╛ рдЫрдВрдЯрдиреА рдХреА рдЬрд╛рддреА рд╣реИ) |
1 рджрд┐рди | 86,400 | 0.11 рд╕реЗрдХрдВрдб | 0.05 рд╕реЗрдХрдВрдб | 0.1 рд╕реЗрдХрдВрдб | 0.08 рд╕реЗрдХрдВрдб |
1 рд╕рдкреНрддрд╛рд╣ | 604.800 | 0.86 рд╕реЗрдХрдВрдб | 0.33 рд╕реЗрдХрдВрдб | 0.73 рд╕реЗрдХрдВрдб | 0.6 рд╕реЗрдХрдВрдб |
1 рдорд╣реАрдирд╛ | 2,592,000 | 33.72 рд╕реЗрдХрдВрдб | рез.ремрел рд╕реЗрдХреЗрдВрдб | 3.62 рд╕реЗрдХрдВрдб | реи. .рей рд╕реЗрдХ |
рд╕реАрдЬрди 1 (3 рдорд╣реАрдиреЗ) | 7,776,000 | 2 рдорд┐рдирдЯ 45 рд╕реЗрдХрдВрдб | 4.87 рд╕реЗрдХрдВрдб | 10.46 рд╕реЗрдХрдВрдб | 8.36 рд╕реЗрдХрдВрдб |
рддрд╛рд▓рд┐рдХрд╛ 2 рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ 2 рд╕реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреА рдЕрд╡рдзрд┐ рдХрд╛ рдорд╛рдкрди
рдкрд╣рд▓реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рджрд┐рдП рдЧрдП рдХреНрд╡реЗрд░реА рд╡реЗрд░рд┐рдПрдВрдЯ рдХрд╕реНрдЯрдо MySQL рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдХрдИ рдЧреБрдирд╛ рддреЗрдЬреА рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред
рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ 3 ред рдиреЗрдЯрд╡рд░реНрдХ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдЕрдзреАрдирд╕реНрде рд╕рдВрдЧрдардиреЛрдВ рдХреЛ рдХреБрдЫ рддрдХрдиреАрдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд╕рдВрдЧрдарди рдХреЛ рдЖрд╡рдВрдЯрд┐рдд рдЖрдИрдкреА рдкрддреЛрдВ рдХреА рд╢реНрд░реЗрдгрд┐рдпрд╛рдВред рдХрднреА-рдХрднреА рд╕рдВрдЧрдарди рдХреЛ рдЖрд╡рдВрдЯрд┐рдд рдЖрдИрдкреА рдкрддреЗ рдХреЗ рд╕рдмрд╕реЗ рдмрдбрд╝реЗ рдирд┐рд░рдВрддрд░ рдмреНрд▓реЙрдХреЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рд╕рдВрдЧрдардиреЛрдВ рдФрд░ рдЙрдирдХреЗ рдиреЗрдЯрд╡рд░реНрдХ рд░реЗрдВрдЬ (рдиреЗрдЯ) рдХреА рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдкреНрд░рд╕реНрддреБрдд рдХреА рдЧрдИ рд╣реИ:
org_id (рд╕рдВрдЧрдарди рдЖрдИрдбреА) | ORG_NAME (рд╕рдВрдЧрдарди рдХрд╛ рдирд╛рдо) | рдЬрд╛рд▓ (рдиреЗрдЯрд╡рд░реНрдХ рдкрддрд╛, 4 рдмрд╛рдЗрдЯреНрд╕) | рдЬрд╛рд▓ (рдиреЗрдЯрдорд╛рд╕реНрдХ, 4 рдмрд╛рдЗрдЯреНрд╕) |
рдпрджрд┐ рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдЧрдарди рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдмрдбрд╝реА рдирд┐рд░рдВрддрд░ рдиреЗрдЯрд╡рд░реНрдХ рд░реЗрдВрдЬ рдЪреБрдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рдХрдард┐рдирд╛рдЗрдпрд╛рдБ рдирд╣реАрдВ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдкрдХреЛ рджреЛ рд╕рдмрд╕реЗ рдмрдбрд╝реА рдиреЗрдЯрд╡рд░реНрдХ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдирдореВрдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд╡реЗрд░реА рдХрд╛ рд╕рдВрдмрдВрдзрдкрд░рдХ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛рдлреА рдЬрдЯрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ - рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рд░реЗрдВрдЬ рдХреЗ рд▓рд┐рдП рдмрдбрд╝реА рдиреЗрдЯрд╡рд░реНрдХ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░реЗрдВ рдЬреЛ рдкрд╣рд▓реЗ рджреЛ рд╕реЗ рдХрдо рд╣реИрдВ (рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП
рдпрд╣рд╛рдВ рджреЗрдЦреЗрдВ)ред
рд╕рдВрдмрдВрдзрдкрд░рдХ рдореЙрдбрд▓ рдореЗрдВ рдХреНрд╡реЗрд░реА рд╡рд┐рдХрд▓реНрдк:
SELECT t1.org_id, t1.org_name, (SELECT count(*) FROM `nets` t2 WHERE t2.org_id = t1.org_id AND ((t2.mask<<32)+t2.net) < ((t1.mask<<32)+t1.net) ) c, inet_ntoa(t1.net), inet_ntoa(t1.mask) FROM nets t1 HAVING c<2 ORDER BY org_id, mask;
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдПрдХ рдкрд╛рд╕ рдореЗрдВ, рдЖрдк рдкреНрд░рджрд░реНрд╢рд┐рдд рдиреЗрдЯрд╡рд░реНрдХ рд░реЗрдВрдЬ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдВрдЧрдарди рдХреЛ рдмрджрд▓рддреЗ рд╕рдордп рдХрд╛рдЙрдВрдЯрд░ рдХреЛ рд░реАрд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рдХрд╛рдЙрдВрдЯрд░ рд╡рд╛рдВрдЫрд┐рдд рдореВрд▓реНрдп (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ 2) рддрдХ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИ, рддреЛ рд░рд┐рдХреЙрд░реНрдб рдкреНрд░рджрд░реНрд╢рд┐рдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╕рдВрдЧрдарди рдХреЗ рднреАрддрд░ рдиреЗрдЯрд╡рд░реНрдХ рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рд╕реНрд╡рдпрдВ рдХреНрд░рдордмрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдХрд╕реНрдЯрдо MySQL рдЪрд░ рдХреЗ рд╕рд╛рде рдХреНрд╡реЗрд░реА рд╡рд┐рдХрд▓реНрдк:
set @i=0, @p=0; SELECT t.org_id, t.org_name, inet_ntoa(t.net), inet_ntoa(t.mask) FROM ( SELECT * FROM `nets` ORDER BY `org_id`, `mask` ) AS t WHERE ( (if (@p=org_id, @i:=@i+1,(@i:=0) or (@p:=org_id))) and @i<2);
рдкреАрдкреА рдХреЗ рд╕рд╛рде рдХреНрд╡реЗрд░реА рдХреА рдЕрдзрд┐рдХ рджрдХреНрд╖рддрд╛ рдЗрд╕ рддрдереНрдп рд╕реЗ рдкрд░рд┐рдгрд╛рдо рджреЗрддреА рд╣реИ рдХрд┐ рдХреНрд╡реЗрд░реА рдХреЗ рд╕рдВрдмрдВрдзрдкрд░рдХ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдПрдХ рдЙрдкрд╢реНрд░реЗрдгреА рд╣реИ рдЬреЛ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рдХреЙрд░реНрдб рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ рекред рдкрд┐рдЫрд▓реЗ рдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ, рддрд╛рд▓рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдкрд░ рдХрднреА рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬреАрд╡рди рдореЗрдВ, рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрд╢рд╛ рд╕рдВрднрд╡ рдпрд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ)ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬрдм рд▓реМрдХрд┐рдХ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдФрд░ рд╕реНрддрдВрдн рдмрдирд╛рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдорд╛рдкрд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛
рдкрд┐рдЫрд▓рд╛ рдкреНрд░рдмрд▓ рдорд╛рди рд╣реЛрдЧрд╛ред рдЕрдзрд┐рдХрддрдо рдЕрдВрддрд░ рдХреА рдЙрдЪреНрдЪрддрдо рдЦреЛрдЬ рдЧрддрд┐ рдХреЗ рд▓рд┐рдП, рдЖрдк рдПрдХ рдлрд╝реАрд▓реНрдб рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдорд╛рдк рдорд╛рди
d рдФрд░ рдкрд┐рдЫрд▓реЗ рдПрдХ рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рд╣реЛрдЧрд╛ред
рддрд╛рд▓рд┐рдХрд╛ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ -
рдкреНрд░рдЪрд▓рд┐рдд рдХреЙрд▓рдо рдХреЛ рдЬреЛрдбрд╝рдирд╛ред рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдбреЗрдЯрд╛ рддрд╛рд▓рд┐рдХрд╛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ:
рдЯреА (рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк) | рдбреА (рдорд╛рдк рдбреЗрдЯрд╛) |
рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдФрд░ рдПрдХ рдкреНрд░рд╛рдердорд┐рдХ рдХреБрдВрдЬреА рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ - рдпрджрд┐ рдлрд╝реАрд▓реНрдб
t (
T, d ) рдкрд░ рдлрд╝реАрд▓реНрдб
t рдпрд╛ рдПрдХ рд╕рдВрдпреБрдХреНрдд рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдкрд░ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рд╣реИ, рддреЛ рд░рд┐рд▓реЗрд╢рдирд▓ рдХреНрд╡реЗрд░реА рд╕рдВрд╕реНрдХрд░рдг
рдмрд╣реБрдд рдзреАрдорд╛ рдХрд╛рдо рдХрд░рддрд╛
рд╣реИ ред
рдбреЗрдЯрд╛рдмреЗрд╕ рд░рд┐рд▓реЗрд╢рдирд▓ рдореЙрдбрд▓ рдХреЗ рдврд╛рдВрдЪреЗ рдХреЗ рднреАрддрд░ рд╕рдВрд╢реЛрдзрди рд╕рдВрд╕реНрдХрд░рдг:
CREATE TABLE `t_modifyed` SELECT t, (SELECT `d` FROM `t` `in` where `in`.t < `out`.`t` order by t desc limit 1 ) prev, d FROM `t` `out` ORDER BY `t`;
рдХрд╕реНрдЯрдо рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрд╢реЛрдзрди рд╡рд┐рдХрд▓реНрдк:
set @v = NULL; CREATE TABLE `t_moifyed` SELECT t, @v prev, @v:=dd FROM `t` ORDER BY `t`;
рддрд╛рд▓рд┐рдХрд╛ 3 рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЕрд╡рдзрд┐ (рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдПрдХ рдЕрд▓рдЧ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде) рджрд┐рдЦрд╛рддреА рд╣реИред
рдЕрд╡рдзрд┐ | рдкрдВрдХреНрддрд┐ рдХреА рдЧрд┐рдирддреА | рд╕рдВрдмрдВрдзрдкрд░рдХ рдХреНрд╡реЗрд░реА рд╡рд┐рдХрд▓реНрдк | рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдз (рдЕрдиреБрдХреНрд░рдорд┐рдХ рдирдореВрдирд╛рдХрд░рдг) | рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдз (рдкреНрд░рдЧрддрд┐ рдореЗрдВ рдЫрдВрдЯрдиреА) |
1 рджрд┐рди | 1,440 | 0.35 рд╕реЗрдХрдВрдб | 0.00 рд╕реЗрдХрдВрдб | 0.00 рд╕реЗрдХрдВрдб |
1 рд╕рдкреНрддрд╛рд╣ | 10,800 | 12.33 рд╕реЗрдХреЗрдВрдб | 0.00 рд╕реЗрдХрдВрдб | 0.01 рд╕реЗрдХрдВрдб |
1 рдорд╣реАрдирд╛ | 43,200 | 3 рдорд┐рдирдЯ 45 рд╕реЗрдХрдВрдб | 0.10 рд╕реЗрдХрдВрдб | 0.15 рд╕реЗрдХрдВрдб |
1 рд╕рд╛рд▓ | 525.600 | 5 рдШрдВрдЯреЗ рд╕реЗ рдЕрдзрд┐рдХ | 0.54 рд╕реЗрдХрдВрдб | 0.96 рд╕реЗрдХреЗрдВрдб |
рддрд╛рд▓рд┐рдХрд╛ 3. рдЙрджрд╛рд╣рд░рдг рд╕рдВрдЦреНрдпрд╛ 4 рд╕реЗ рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЕрд╡рдзрд┐ рдХрд╛ рдорд╛рдкрдиред
рдЕрдиреНрдп рдЙрдкрдпреЛрдЧред рдХрдИ рд░рд┐рд▓реЗрд╢рдирд▓ рдбреАрдмреАрдПрдордПрд╕ рдЖрдкрдХреЛ рдХреНрд╡реЗрд░реА рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рд╡рд░реНрддрдорд╛рди рдЖрдЙрдЯрдкреБрдЯ рд▓рд╛рдЗрди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред
- Oracle (рдЪрд░: рдкрдВрдХреНрддрд┐рдмрджреНрдз)
- Microsoft SQL (рдлрд╝рдВрдХреНрд╢рди ROW_NUMBER ())
- PostgreSQL (рдлрд╝рдВрдХреНрд╢рди ROW_NUMBER ())
MySQL рдореЗрдВ, рдХрд╕реНрдЯрдо рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЗрд╡рд▓ рдкрдВрдХреНрддрд┐рдмрджреНрдз рд░реВрдк рд╕реЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЕрдиреБрдХрд░рдг рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
set @n:=0; select @n:=@n+1 as rownum, t.* from t;
рдХрдбрд╝рд╛рдИ рд╕реЗ рдмреЛрд▓рддреЗ рд╣реБрдП, MySQL рдореЗрдВ рдкрдВрдХреНрддрд┐рдмрджреНрдз рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ: рдХреНрд╡реЗрд░реА рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдП рдЧрдП рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд▓рд┐рдорд┐рдЯ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рд╣реИ, рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖ред рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдХрд╛рд░ рдХреА рдХреНрд╡реЗрд░реА рдореЗрдВ рдХрд╕реНрдЯрдо рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЖрдк рдЕрдкрдиреЗ рд░рд┐рд▓реЗрд╢рдирд▓ рд╕рдордХрдХреНрд╖реЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдЧрддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдРрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:
- рдХреНрд╡реЗрд░реА рдРрд╕реА рд╣реИ рдХрд┐ рдпрд╣ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдЕрдиреБрдХреНрд░рдорд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ (рд╕реВрдЪрдХрд╛рдВрдХ рджреНрд╡рд╛рд░рд╛ рдЪрдпрдирд┐рдд рдорд╛рдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрд╣реБрдд рдмрдбрд╝реА рд╣реИ рдФрд░ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рдПрдлрдЯреАрдПрд╕ рдмрдирд╛рддрд╛ рд╣реИ);
- рдЕрдиреБрд░реЛрдз рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди, рдкрд┐рдЫрд▓реЗ рдЪрд░рдгреЛрдВ рдореЗрдВ рдЧрдгрдирд╛ рдХреА рдЧрдИ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ рдореЗрдВ рджрд░реНрдЬ рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЕрдиреНрдп рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреАрдмреАрдПрдордПрд╕ рдореЗрдВ рдПрдХ рд╕рдорд╛рди рдЕрд╡рд╕рд░ред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЪрд░ рдХреЗ рддрдВрддреНрд░ рдХреЗ рд╕рдорд╛рди рдПрдХ рддрдВрддреНрд░ рд▓рдЧрднрдЧ рд╕рднреА рдЖрдзреБрдирд┐рдХ рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреАрдмреАрдПрдордПрд╕ рдореЗрдВ рдореМрдЬреВрдж рд╣реИред рдпрд╣ рдЦрдВрдб PostgreSQL рдФрд░ Microsoft SQL рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕ рддрдереНрдп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдХрджрдо рдирд╣реАрдВ рдЙрдард╛рдП рдЧрдП рдереЗ рддрд╛рдХрд┐ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╡рд╛рдВрдЫрд┐рдд рдХреНрд░рдо рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдЪреБрдирд╛ рдЬрд╛рдП (
рдЯреА рдорд╛рд░реНрдХ рдХреЛ рдмрдврд╝рд╛рдХрд░)ред
PostgreSQL : PostgreSQL рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХрд╕реНрдЯрдо рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╕рдВрд╕реНрдХрд░рдг 9.0 рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░, PostgreSQL рдореЗрдВ рдХреЛрдб рдХреЗ рдЕрдирд╛рдо рдмреНрд▓реЙрдХ рдмрдирд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд╡реЗ рдФрдкрдЪрд╛рд░рд┐рдХ рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╡рд╛рдкрд╕ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐,
pg_temp рдпреЛрдЬрдирд╛ рдореЗрдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬреЛ рд╕рддреНрд░ рдХреЗ рдЕрдВрдд рдореЗрдВ рдпреЛрдЬрдирд╛ рд╕реЗ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджреЗрдЧрд╛ред рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЬреЛ рдЕрдзрд┐рдХрддрдо рдЕрдВрддрд░ рдХреА рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИ:
DROP FUNCTION IF EXISTS pg_temp.max_drop(); CREATE FUNCTION pg_temp.max_drop() returns int as $$ DECLARE prev INTEGER; curr INTEGER; max_ INTEGER; begin max_ := 0; prev := 0; FOR curr IN SELECT d FROM pogoda LOOP IF (curr - prev > max_) THEN max_ := curr - prev; END IF; prev := curr; END LOOP; RETURN max_; end $$ lANGUAGE plpgsql;
Microsoft SQL : MySQL
рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреНрд╡реЗрд░реА рдФрд░ рдХреНрд╡реЗрд░реА рдХреЗ рдмреАрдЪ рдореБрдЦреНрдп рдЕрдВрддрд░
рдпрд╣ рд╣реИ рдХрд┐ рдЪрд░ рдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
DECLARE @diff int; DECLARE @prev int; set @diff = 0; set @prev = 0; select @diff = case when @diff> (d-@prev) then @diff else (d-@prev) end, @prev = d from npogoda; select @diff;
Oracle : рдЗрд╕ рд▓реЗрдЦрди рдХреЗ рд╕рдордп, Oracle SQL рдореЗрдВ рдХрд╕реНрдЯрдо рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ - рдХреЗрд╡рд▓ PL / SQL рдФрд░ SQLPLUS, Oracle XE рдФрд░ рдЬреИрд╕реЗ рдПрдХреНрд╕рдЯреЗрдВрд╢рдиред рдЯреАред рдбреАред
рдзрдиреНрдпрд╡рд╛рджред рд▓реЗрдЦрдХ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓реЛрдЧреЛрдВ рдХреЛ рд▓реЗрдЦрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЕрдореВрд▓реНрдп рдорджрдж рдХреЗ рд▓рд┐рдП рдЖрднрд╛рд░реА рд╣реИ: