我有這個疑問在我的PHP類:存儲過程VS PDO PHP PL/pgSQL的
$this->query = "SELECT a.x, b.y, c.z FROM aaa a INNER JOIN bbb b ON b.ida = a.ida ";
$this->query.= "INNER JOIN ccc c ON c.idb = b.idb WHERE a.ida = :ida";
$this->stmtparam = array(':ida' => $this->ida);
return parent::fillArray(); // it fills a PDO FETCH_ASSOC array and returns it as JSON
想,這是一個10倍以上覆雜的查詢和我有很多這樣的公司的信息系統;
我的問題是:是否有可能在postqresql中做一個存儲的函數,它執行相同的操作,並返回一個很多表的SET,然後將結果獲取到php中的關聯數組中?
它值得去做嗎?
這取決於什麼這一切實際上是應該做的,但我會說,如果這是進行任何一種邏輯,通常建議將這種邏輯放在數據存儲層和應用程序代碼之外。 – Pudge601
因此,假設我想返回2013-01-01員工工作的t_employee名稱,t_city ID,t_emp_salary工資,t_department名稱和t_department_manager名稱,那麼您會說這是一個「邏輯」情況,並且最好將它保存在應用程序層中? – user1626498
@ Pudge601取決於它是什麼邏輯,可能最好將它保留在實際查詢中,例如,如果要存儲二進制文件但希望檢索十六進制值。 – GriffLab