摘要:先引入類(lèi)確定查詢(xún)表關(guān)聯(lián)表需要查詢(xún)的字段,這里兩個(gè)表的字段都可以當(dāng)數(shù)據(jù)很大時(shí),統(tǒng)計(jì)數(shù)據(jù)時(shí)用條件你好執(zhí)行搜索執(zhí)行模糊搜索設(shè)置條件,什么的都可以往后加注意這里的條件和原始語(yǔ)句中的語(yǔ)句剛好相反獲取查詢(xún)對(duì)象執(zhí)行并返回結(jié)果
先引入Builder類(lèi)
use PhalconMvcModelQueryBuilder as QueryBuilder;
public function mytestAction(){ $builder = new QueryBuilder(); //確定查詢(xún)表 $builder -> from(["parts"=>"Test3FrontendModelsParts"]); //關(guān)聯(lián)表 $builder -> innerJoin("Test3FrontendModelsRobots", "robots.id = parts.robots_id","robots"); // 需要查詢(xún)的字段,這里兩個(gè)表的字段都可以 $builder -> columns([ "robots.name", "parts.id", "count(parts.id) as count", //當(dāng)數(shù)據(jù)很大時(shí),統(tǒng)計(jì)數(shù)據(jù)時(shí)用 ]); // where條件 $builder -> where("parts.id = :id:",array("id" =>1)); // andWhere $builder -> andWhere("robots.name = :name:",array("name" => "你好")); //執(zhí)行搜索 if (isset($params["conditions"])) { foreach ($params["conditions"] as $field => $val) { if (!preg_match("/^s*$/", $val)) { //執(zhí)行模糊搜索 $builder->andWhere("providers.$field like :$field:", array($field => "%" . trim($val) . "%")); } } } // 設(shè)置limit條件,order什么的都可以往后加$builder->order() $builder->limit(5,5); // $builder->limit($rows, ($currentPage - 1) * $rows); 注意:這里的limit條件和原始sql語(yǔ)句中的limit語(yǔ)句剛好相反 //獲取查詢(xún)對(duì)象 $query = $builder->getQuery(); //執(zhí)行并返回結(jié)果 $result = $query->execute(); var_dump($result -> toArray());die; }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/30361.html
摘要:查詢(xún)語(yǔ)言查詢(xún)語(yǔ)言,簡(jiǎn)稱(chēng)或,是一種面向?qū)ο蟮母呒?jí)語(yǔ)言,允許用標(biāo)準(zhǔn)化的編寫(xiě)。該對(duì)象的每個(gè)成員都是一個(gè)包含所查詢(xún)字段的標(biāo)準(zhǔn)對(duì)象。 Phalcon查詢(xún)語(yǔ)言(Phalcon Query Language) Phalcon查詢(xún)語(yǔ)言,簡(jiǎn)稱(chēng)PhalconQL或PHQL,是一種面向?qū)ο蟮母呒?jí)SQL語(yǔ)言,允許用標(biāo)準(zhǔn)化的SQL編寫(xiě)。PHQL實(shí)現(xiàn)了把操作語(yǔ)句解析為RDBMS目標(biāo)語(yǔ)言的解析器(C語(yǔ)言編寫(xiě))。 為...
摘要:本文描述了框架中數(shù)據(jù)庫(kù)操作方法,主要討論框架的組件中的操作方法。屬性方法在框架中支持屬性的擴(kuò)展查詢(xún),在上例中,可以把條件語(yǔ)句改為同時(shí)省略查詢(xún)條件結(jié)果不變。 本文描述了PHP-Phalcon框架中數(shù)據(jù)庫(kù)操作方法,主要討論P(yáng)halcon框架的Model組件中的操作方法。更詳細(xì)的Model介紹請(qǐng)參考:官方文檔 1. 連接數(shù)據(jù)庫(kù) 在Phalcon框架中,通過(guò)在DI中注入db參數(shù)來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)的...
摘要:幫助你開(kāi)始使用的簡(jiǎn)易指南。第一種方式參考第二種方式參考使用參考簡(jiǎn)單粗暴的理解是把下的對(duì)應(yīng)成數(shù)據(jù)庫(kù)的表,類(lèi)屬性對(duì)應(yīng)表字段。 幫助你開(kāi)始使用 phalcon 的簡(jiǎn)易指南。 簡(jiǎn)介 Phalcon 2將于2015年4月17日發(fā)布,這個(gè)版本大約85%的代碼是基于 Zephir 語(yǔ)言重寫(xiě)的。Zephir是開(kāi)源的,使用類(lèi)似PHP語(yǔ)法的語(yǔ)言,生成C語(yǔ)言代碼,并編譯成PHP擴(kuò)展。這提高了PHP擴(kuò)展的開(kāi)發(fā)...
摘要:原文發(fā)表于入門(mén)教程之模型提供了四種方式操作數(shù)據(jù)庫(kù)模型數(shù)據(jù)庫(kù)抽象層以及原生。創(chuàng)建模型模型類(lèi)的命名必須符合駝峰命名法,而且須繼承自類(lèi)文件路徑繼承自類(lèi)。 原文發(fā)表于:Phalcon入門(mén)教程之模型 Phalcon 提供了四種方式操作Mysql數(shù)據(jù)庫(kù):模型、PHQL、數(shù)據(jù)庫(kù)抽象層以及原生SQL。不論何種方式,首先都需要在DI中注冊(cè) db 服務(wù)才能正常使用: DI注冊(cè)db服務(wù) // 文件路徑:...
摘要:異步隊(duì)列消費(fèi)者開(kāi)發(fā)只提供了模式下運(yùn)行控制器方法,并未提供主進(jìn)程多子進(jìn)程的進(jìn)程模型,并未提供多線(xiàn)程處理。多線(xiàn)程異步隊(duì)列服務(wù)只需寫(xiě)好控制器方法,然后在配置文件中配置下路由命名空間進(jìn)程線(xiàn)程數(shù)量,就可在模式中啟動(dòng)多進(jìn)程多線(xiàn)程模型的異步隊(duì)列處理程序。 最近業(yè)余時(shí)間一直在開(kāi)發(fā)ExpressPHP的第二個(gè)版本 MixPHP,今天下班想起之前一個(gè)面試官的問(wèn)題:你為什么還要再造一個(gè)輪子呢?仔細(xì)回想,第一...
閱讀 2607·2021-10-14 09:43
閱讀 3566·2021-10-13 09:39
閱讀 3299·2019-08-30 15:44
閱讀 3150·2019-08-29 16:37
閱讀 3714·2019-08-29 13:17
閱讀 2740·2019-08-26 13:57
閱讀 1832·2019-08-26 11:59
閱讀 1253·2019-08-26 11:46