将mysql Query
转换为doctrine Query
语言吗?
我已经完成mysql并在phpmyadmin
中运行查询,并且得到返回的行:
select ppp.payperiod_sdesc,ppesa.gross_pay,pptpp.esi_employer_contribution,pptpp.pf_employer_contribution,pplw.employerContribution
from py_process_emp_status_approved AS ppesa
left join py_process_tds_pf_pt AS pptpp on ppesa.ou_code = pptpp.ou_code
left join py_pay_group AS ppg on pptpp.pg_code = ppg.pg_code
left join py_process_labour_welfare AS pplw on ppg.pg_code = pplw.pg_code
left join py_pay_period AS ppp on pplw.payperiod_code = ppp.payperiod_code
left join py_payroll_calendar AS ppc on ppp.paycal_code = ppc.paycal_code
WHERE ppesa.ou_code = 15000
ORDER BY ppesa.ou_code DESC
LIMIT 0,5
请将mysql查询转换为教义查询语言。
答案 0 :(得分:0)
您可以在此处的文档中找到更多指南: https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/native-sql.html
看看结果集映射。您也可以只创建一个存储库函数来执行本机sql,然后调用您的repo函数。
然后您可以在下面调用类似的内容: 结果= getDoctrine()-> getManager()-> getRepository(您的仓库)-> repofunction();
如果不确定如何创建/调用存储库函数,则它会在symfony文档中多次涉及。
Doctrine加载所有结果然后过滤掉,这是一个昂贵的过程,您最好让sql为您完成工作。
希望您拥有达到最终结果所需的一切。