рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╢реЗ рдЕрдорд╛рдиреНрдпрдХрд░рдг рд╕рдВрднрд╡рддрдГ рд╕рдмрд╕реЗ рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рдЪреАрдЬреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рдореБрджреНрджреЗ рдХреА рд╕реВрдХреНрд╖реНрдорддрд╛ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреА рдкреВрд░реНрдгрддрд╛, рдЕрддрд┐рд░реЗрдХ рдФрд░ рдЬрдЯрд┐рд▓рддрд╛ рдХреЗ рдмреАрдЪ рдПрдХ рд╕рдордЭреМрддрд╛ рд╣реИред рддреЛ рдпрд╣ рд▓реЗрдЦ рдХрд┐рд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ? рдореИрдВ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рд╡рд┐рдХрд▓рд╛рдВрдЧрддрд╛ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдП, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХрд┐рд╕реА рднреА рдордВрдЪ, рднрд╛рд╖рд╛ рдпрд╛ рдврд╛рдВрдЪреЗ рд╕реЗ рди рдЬреБрдбрд╝реВрдВред рдЦреИрд░, рд╣рд░ рдЪреАрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдХрд┐рд╕реА рднреА рдЪреАрдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо ORM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдП рдЧрдП SQL рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдХреИрд╢рд┐рдВрдЧ рдХрд░рдиреЗ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░реЗрдВрдЧреЗ, рдЬреЛ рдЖрдЬрдХрд▓ рдкрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВред
рдкреВрд░реНрдгрддрд╛ рдФрд░ рдЕрддрд┐рд░реЗрдХ
рдЖрдЗрдП рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдЪрд╛рд░реЛрдВ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ рдЬреЛ рдХрд┐ SQL рдХреНрд╡реЗрд░реА рдпрд╛ ORM рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИрдВред рдЙрдкрд░реНрдпреБрдХреНрдд рдкреВрд░реНрдгрддрд╛ рдФрд░ рдЕрддрд┐рд░реЗрдХ рдореИрдВ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реВрдВред рдЕрдорд╛рдиреНрдп рд╣реЛрдиреЗ рдХреА рдкреВрд░реНрдгрддрд╛ рдЗрд╕рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ, рдЬреЛ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ рдХреИрд╢ рдХрд┐рддрдиреА рдмрд╛рд░ рдЧрдВрджрд╛ рдбреЗрдЯрд╛ рд╣реЛрдЧрд╛ рдФрд░ рдХрдм рддрдХ рд╡рд╣рд╛рдБ рд░рд╣реЗрдЧрд╛, рдпрд╣ рд╕реНрдерд┐рддрд┐ рдХрд┐рддрдиреА рдмрд╛рд░ рдФрд░ рдХрд┐рди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдЙрддреНрдкрдиреНрди рд╣реЛ рд╕рдХрддреА рд╣реИ / рд╣реИред рдмрджрд▓реЗ рдореЗрдВ, рдЕрддрд┐рд░реЗрдХ рдХреЛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдХрд┐рддрдиреА рдмрд╛рд░ рдХреИрд╢ рдХреЛ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рдЕрдорд╛рдиреНрдп рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рдордп рдЕрдорд╛рдиреНрдп рд╣реЛрдиреЗ рдХреА рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдзрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдПрдХ рдУрд░, рдпрд╣ рд▓рдЧрднрдЧ рдЧрд╛рд░рдВрдЯреА рджреЗрддрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдХреИрд╢ рдЧрдВрджрд╛ рд╣реИред рджреВрд╕рд░реА рдУрд░, рдЬрд┐рд╕ рд╕рдордп рдХреИрд╢ рдЧрдВрджрд╛ рд░рд╣рддрд╛ рд╣реИ, рд╣рдо рдЬреАрд╡рдирдХрд╛рд▓ рдХреЛ рдХрдо рдХрд░рдХреЗ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕реАрдорд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ рд╣рд┐рдЯ рдХреЗ рдкреНрд░рддрд┐рд╢рдд рдХреЛ рдХрдо рдХрд░ рджреЗрдЧрд╛)ред рдпрд╛рдиреА рдХреИрд╢ рдЬреАрд╡рдирдХрд╛рд▓ рдХрдо рдХрд░рддреЗ рд╕рдордп, рдЕрдорд╛рдиреНрдпрддрд╛ рдХреА рдкреВрд░реНрдгрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдЕрддрд┐рд░реЗрдХ рдмрд┐рдЧрдбрд╝рддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдЕрдорд╛рдиреНрдпрддрд╛ (рдХреЛрдИ рдЧрдВрджрд╛ рдбреЗрдЯрд╛ рдирд╣реАрдВ) рдХреА рдЖрджрд░реНрд╢ рдкреВрд░реНрдгрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рд╕рдордп-рд╕реАрдорд╛ 0 рдкрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдпрд╛, рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдХреИрд╢ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдХрдИ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдЕрд╕реНрдерд╛рдпреА рдХреИрд╢ рдЕрдкреНрд░рдЪрд▓рди рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдпрд╣ рдЗрддрдирд╛ рдмреБрд░рд╛ рдирд╣реАрдВ рд╣реИ рдпрджрд┐ рдирд╡реАрдирддрдо рд╕рдорд╛рдЪрд╛рд░ рдмреНрд▓реЙрдХ рдореЗрдВ рд╕рдорд╛рдЪрд╛рд░ рдХреБрдЫ рдорд┐рдирдЯ рдмрд╛рдж рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ рдпрд╛ рдЖрдкрдХреЗ рд╕рд╛рдорд╛рдЬрд┐рдХ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХреБрдЫ рд╣рдЬрд╝рд╛рд░ рдХреА рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдШрдЯрдирд╛ рдЕрдорд╛рдиреНрдп
рд╕рдордп-рд╕реАрдорд┐рдд рд╡рд┐рдзрд┐ рдЗрд╕рдХреА рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рд╣рдореЗрд╢рд╛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдареАрдХ рд╣реИ, рдЬрдм рдЖрдк рдбреЗрдЯрд╛ рдмрджрд▓рддреЗ рд╣реИрдВ рддреЛ рдЖрдк рдХреИрд╢ рдХреЛ рдлреНрд▓рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рдирдпрд╛ рдЕрдиреБрд░реЛрдз рдЬреЛрдбрд╝рддреЗ рд╕рдордп, рдЬрд┐рд╕реЗ рд╣рдо рдХреИрд╢ рдХрд░рддреЗ рд╣реИрдВ, рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рдмрджрд▓рддреЗ рд╕рдордп рдЗрд╕реЗ рдЕрдорд╛рдиреНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЛрдб рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред рдпрджрд┐ рд╣рдо ORM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдореЙрдбрд▓ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рджреМрд░рд╛рди рдбреЗрдЯрд╛ рдПрдХ рд╕реНрдерд╛рди рдкрд░ (рдПрдХ рдЕрдЪреНрдЫреЗ рдорд╛рдорд▓реЗ рдореЗрдВ) рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИред рдбреЗрдЯрд╛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЗрдВрджреНрд░реАрдп рдХреЛрдб рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХрд╛рд░реНрдп рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рддреА рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд╕рд╛рде, рдЖрдкрдХреЛ рд▓рдЧрд╛рддрд╛рд░ рд╡рд╣рд╛рдБ рдХреИрд╢ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдЯреБрдХрдбрд╝реЛрдВ рдХреЛ рдбрдВрдк рдХрд░рдиреЗ рдХреА рдирдИ рдФрд░ рдирдИ рд▓рд╛рдЗрдиреЗрдВ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдо рдЕрдкрдиреЗ рд╕рд┐рд░ рдкрд░ рдЕрддреНрдпрдзрд┐рдХ рдХреЛрдб рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕реЗ рдХрдордЬреЛрд░ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИред
рд╣рдо рдШрдЯрдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ - рдореЙрдбрд▓ рдХреЛ рдмрдЪрд╛рдиреЗ / рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП ORM рдШрдЯрдирд╛рдУрдВ рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛, рдФрд░ рдХреБрдЫ рдХреЛ рдХреИрд╢рд┐рдВрдЧ рдХрд░рддреЗ рд╕рдордп, рд╣рдо рддреБрд░рдВрдд рд╣реИрдВрдбрд▓рд░ рдХреЛ рдЙрд╕реА рдШрдЯрдирд╛ рдкрд░ рд▓рдЯрдХрд╛рдПрдВрдЧреЗ рдЬреЛ рдЗрд╕реЗ рдХреИрд╢ рд╕реЗ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИред рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕рдорд╛рди рд╣реИрдВрдбрд▓рд░ рд▓рд┐рдЦрдирд╛ рдердХрд╛рдК рд╣реИ, рд╕рд╛рде рд╣реА рдЖрд╡реЗрджрди рддрд░реНрдХ рдПрдХ рдореЛрдЯреЗ рд╕реБрдЕрд░ рдХреА рддрд░рд╣ рдХреИрд╢рд┐рдВрдЧ / рдЕрдорд╛рдиреНрдп рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдЕрддрд┐рд░рдВрдЬрд┐рдд рд╣реИред
ORM рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрдорд╛рдиреНрдпрдХрд░рдг
рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдУрдЖрд░рдПрдо рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрд░реЛрдз рди рдХреЗрд╡рд▓ рдкрд╛рда рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдВрд░рдЪрдирд╛ - рдореЙрдбрд▓, рдПрдХ рд╢рд░реНрдд рдкреЗрдбрд╝, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдЗрд╕рд▓рд┐рдП, рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, ORM рдХреИрд╢ рдФрд░ рдЕрдорд╛рдиреНрдп рд╣реИрдВрдбрд▓рд░ рдХреЛ рд╕реАрдзреЗ рд▓рдЯрдХрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рддреЛ рдХреИрд╢рд┐рдВрдЧ рдХрд░реЗрдВред рдзрд┐рдХреНрдХрд╛рд░ рд╣реИ рдореЗрд░реЗ рдЬреИрд╕реЗ рдЖрд▓рд╕реА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдХрд░реНрд╖рдХ рд╕рдорд╛рдзрд╛рдиред
рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЙрджрд╛рд╣рд░рдгред рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдо рдПрдХ рдЕрдиреБрд░реЛрдз рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ:
select * from post where category_id =2 and published
рдФрд░ рдЗрд╕реЗ рдХреИрд╢ рдХрд░реЗрдВред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рд╣рдореЗрдВ рдХрд┐рд╕реА рдкреЛрд╕реНрдЯ рдХреЛ рдЬреЛрдбрд╝рдиреЗ / рдЕрдкрдбреЗрдЯ / рдбрд┐рд▓реАрдЯ рдХрд░рддреЗ рд╕рдордп, рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ / рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрдм рд╣рд╛рд▓рдд
category_id=2 and published=true
рдЕрдкрдиреЗ рдкреБрд░рд╛рдиреЗ рдпрд╛ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдкреВрд░реА рд╣реЛрддреА рд╣реИред рдХреБрдЫ рд╕рдордп рдмрд╛рдж, рдкреНрд░рддреНрдпреЗрдХ рдореЙрдбрд▓ рдХреЗ рд▓рд┐рдП рдЗрдирд╡реИрд▓рд┐рдб рдХреА рд╕реВрдЪреА рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд░реАрд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:
post:
category_id =2 and published = true :
select * from post where category_id =2 and published
select count ( * ) from post where category_id =2 and published
select * from post where category_id =2 and published limit 20
category_id =3 and published = true :
select * from post where category_id =3 and published limit 20 offset 20
category_id =3 and published = false :
select count ( * ) from post where category_id =3 and not published
foo:
a =1 or b =10 :
or_sql
a in ( 2 , 3 ) and b =10 :
in_sql
a >1 and b =10 :
gt_sql
рдЖрджрд┐
рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдореЗрдВ, рдХреНрд╡реЗрд░реА рдХреЗ рдкрд╛рда, рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП рдЧреНрд░рдВрдереЛрдВ рдХреЗ рдмрдЬрд╛рдп, рдЕрдорд╛рдиреНрдп рд▓реЛрдЧреЛрдВ рдореЗрдВ рдХреИрд╢ рдХреАрдЬрд╝ рдХреА рд╕реВрдЪрд┐рдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред
рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдЬрдм рдХреЛрдИ рдСрдмреНрдЬреЗрдХреНрдЯ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИред рд╣рдореЗрдВ рдЕрдХреНрд╖рдо рд▓реЛрдЧреЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рдХреА рдЧрдИ рд╢рд░реНрддреЛрдВ рдХреЗ рд▓рд┐рдП рдХреИрд╢ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЛ рдорд┐рдЯрд╛ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдХрдИ рдЗрдирд╡реИрд▓рд┐рдб рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЙрд╕реА рд╕реНрдерд╛рди рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд╣рд╛рдВ рдХреИрд╢ рдЦреБрдж рд╣реА, рдЕрд░реНрдерд╛рддреНред рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреА рд╕реНрдореГрддрд┐ рдореЗрдВ рдирд╣реАрдВ рд╣реИ рдФрд░ рдореИрдВ рдЙрдиреНрд╣реЗрдВ рд╣рд░ рд╕рдордп рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдФрд░ рд╕рднреА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреА рд▓рдЧрд╛рддрд╛рд░ рдЬрд╛рдВрдЪ рдЛрдг рдХреЗ рд▓рд┐рдП рджрд░реНрджрдирд╛рдХ рд╣реИред
рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдпрд╣ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕рдореВрд╣ рдФрд░ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рд╡рд┐рдХрд▓рд╛рдВрдЧ рд▓реЛрдЧреЛрдВ рдХреЛ рдЙрдирдХреЗ рдкреВрд░реНрдг рд╕рддреНрдпрд╛рдкрди рдХреЗ рдмрд┐рдирд╛ред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЬрдм рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рдХреЗрд╡рд▓ рдореВрд▓реНрдпреЛрдВ рдореЗрдВ рднрд┐рдиреНрди рд╣реЛрддреА рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреЛрд╕реНрдЯ рдореЙрдбрд▓ рдореЗрдВ рд╕рднреА рдЕрдХреНрд╖рдо рд▓реЛрдЧреЛрдВ рдХреЗ рдкрд╛рд╕ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рд╢реНрд░реЗрдгреА_рдЖрдИрдбреА = рд╣реИ? рдФрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд =? .. рд╡рд┐рдХрд▓рд╛рдВрдЧ рд▓реЛрдЧреЛрдВ рдХреЛ рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рдореВрд╣ рд╕реЗ рдЬреЛрдбрд╝реЗрдВ:
post:
category_id =? and published =? :
2 , true :
select * from post where category_id =2 and published
select count ( * ) from post where category_id =2 and published
select * from post where category_id =2 and published limit 20
3 , true :
select * from post where category_id =3 and published limit 20 offset 20
3 , false :
select count ( * ) from post where category_id =3 and not published
foo:
a =? or b =? :
1 , 10 :
or_sql
a in ? and b =? :
( 2 , 3 ), 10 :
in_sql
a > ? and b =? :
1 , 10 :
gt_sql
рд╣рд╛рд▓рдд рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ category_id =? рдФрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд = ?, рдЬреЛрдбрд╝рд╛ рдкреЛрд╕реНрдЯ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдЬрд╛рдирдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рд▓реЗрдмрд▓ рдореЗрдВ ""? рдпрджрд┐ рд╡рд╕реНрддреБ:
{id : 42 , title : "тАж" , content : "тАж" , category_id : 2 , published : true }
, рддреЛ рдкрд░рд┐рд╡рд╛рд░ рд╕реЗ рдПрдХрдорд╛рддреНрд░ рдЙрдкрдпреБрдХреНрдд рдЕрдорд╛рдиреНрдп рд╢реНрд░реЗрдгреА_рдЖрдИрдбреА = 2 рдФрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд = рд╕рддреНрдп рд╣реЛрдЧрд╛, рдФрд░ рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдЕрдиреБрд░реВрдк 3 рдХреИрд╢ рдХреБрдВрдЬреА рдХреЛ рдорд┐рдЯрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╛рдиреА рд╢рд░реНрддреЛрдВ рдХреА рдПрдХ рд╕реБрд╕рдВрдЧрдд рдЬрд╛рдВрдЪ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд╣рдо рддреБрд░рдВрдд рдпреЛрдЬрдирд╛ рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдбреЗрдЯрд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЖрд╡рд╢реНрдпрдХ рдЕрдорд╛рдиреНрдп рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрдзрд┐рдХ рдХрдард┐рди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ? рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдХреБрдЫ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: рдпрд╛ рджреЛ рдЕрдорд╛рдиреНрдп рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд, рдореЗрдВ рддреИрдирд╛рдд рдпрд╛ред рдЕрдиреНрдп рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдпрд╛ рддреЛ рдЖрдкрдХреЛ рдЪреАрдЬреЛрдВ рдХреЛ рдЬрдЯрд┐рд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдпрд╛ рдРрд╕реА рд╢рд░реНрддреЛрдВ рдХреЛ рддреНрдпрд╛рдЧрдХрд░ рдЕрдорд╛рдиреНрдп рдирд┐рд░рд░реНрдердХ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред рдЗрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рдж foo рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓рд╛рдВрдЧрддрд╛ рдХреНрдпрд╛ рд╣реЛрдЧреА:
foo:
a = ? :
1 : or_sql
b = ? :
10 : or_sql, gt_sql
a = ? and b = ? :
2 , 10 : in_sql
3 , 10 : in_sql
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдкреНрд░рддреНрдпреЗрдХ рдореЙрдбрд▓ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдпреЛрдЬрдирд╛рдУрдВ (рдХреЗрд╡рд▓ рдлрд╝реАрд▓реНрдбреНрд╕ рдХреА рд╕реВрдЪреА) рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рд╣рдо рдЕрдорд╛рдиреНрдпрддрд╛рдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрди рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреА рд╕реВрдЪреА рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдорд┐рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореИрдВ рдлреВ рдХреЗ рд▓рд┐рдП рдЕрдорд╛рдиреНрдп рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреВрдВрдЧрд╛ред рдорд╛рди рд▓реАрдЬрд┐рдП рд╣рдордиреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдСрдмреНрдЬреЗрдХреНрдЯ
{id : 42 , a : 1 , b : 10 }
рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рд╣реИ
{id : 42 , a : 1 , b : 10 }
2 рдХреЗ рдорд╛рди рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛ рдФрд░ рд╡рд╛рдкрд╕ рд▓рд┐рдЦ рджрд┐рдпрд╛ред рдЕрджреНрдпрддрди рдХрд░рддреЗ рд╕рдордп, рдЕрдорд╛рдиреНрдп рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рдкреБрд░рд╛рдиреА рдФрд░ рдирдИ рд╕реНрдерд┐рддрд┐ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рддреЛ, рдкреБрд░рд╛рдиреЗ рд░рд╛рдЬреНрдп рдХреЗ рд▓рд┐рдП рдЕрдорд╛рдиреНрдп:
a =1 , b =10 , a =1 and b =10
, рд╕рдВрдмрдВрдзрд┐рдд рдХреБрдВрдЬрд┐рдпрд╛рдБ or_sql рдФрд░ gt_sql (рдЕрдВрддрд┐рдо рдЕрдорд╛рдиреНрдп рдЕрдиреБрдкрд╕реНрдерд┐рдд рд╣реИ, рдЦрд╛рд▓реА рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред рдирдП рд░рд╛рдЬреНрдп рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдЕрдорд╛рдиреНрдп
a =2 , b =10 , a =2 and b =10
рдорд┐рд▓рддреЗ рд╣реИрдВ, рдЬреЛ in_sql рдХреБрдВрдЬреА рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╕рднреА 3 рдЕрдиреБрд░реЛрдз рдорд┐рдЯ рдЬрд╛рддреЗ рд╣реИрдВред
рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рдореИрдВрдиреЗ рднрд╛рд╖рд╛ рдФрд░ рдордВрдЪ рд╕реЗ рдЦреБрдж рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдпрдерд╛рд╕рдВрднрд╡ рдХреЛрд╢рд┐рд╢ рдХреА, рд╣рд╛рд▓рд╛рдБрдХрд┐, рдПрдХ рднрд░реА рд╣реБрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдкреНрд░рдгрд╛рд▓реА рднреА рдореМрдЬреВрдж рд╣реИред рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдФрд░ рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдЧреБрд░ред