濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > laravel多條件查詢方法(and,or嵌套查詢)

laravel多條件查詢方法(and,or嵌套查詢)

熱門(mén)標(biāo)簽:聊城電話外呼系統(tǒng)公司 AI電話機(jī)器人OEM貼牌 沛縣400電話辦理 青白江地圖標(biāo)注 德陽(yáng)中江如何申請(qǐng)400開(kāi)頭電話 銅川電話機(jī)器人價(jià)格 智能電話機(jī)器人好公司門(mén)薩維 辦理重慶400電話 江蘇電商外呼系統(tǒng)運(yùn)營(yíng)商

說(shuō)明

在日常開(kāi)發(fā)中,經(jīng)常會(huì)需要寫(xiě)多條件的數(shù)據(jù)庫(kù)查詢語(yǔ)句。在使用框架的情況下,單純使用原生sql查詢會(huì)導(dǎo)致結(jié)果與model無(wú)法對(duì)應(yīng),也就沒(méi)有辦法使用框架的一些便利的方法對(duì)結(jié)果集進(jìn)行處理。尤其是laravel提供了非常多的對(duì)查詢結(jié)果集進(jìn)行處理的工具。所以最好是使用laravel提供的ORM進(jìn)行多條件的數(shù)據(jù)庫(kù)查詢。

問(wèn)題

比如需要執(zhí)行這樣一條sql語(yǔ)句

select 
  * 
from 
  homework 
where 
  (id between 1 and 10 or id between 50 and 70) 
  and complete = 1 
  and (title like 'a%' or title like 'b%');

解決方式

$homeworks = Homework::where(function ($query) {
  $query->whereBetween('id', [1, 10])
     ->orWhereBetween('id', [50, 70]);
})->where('complete', 1)
->where(function ($query) {
  $query->where('title', 'like', 'a%')
     ->orWhere('title', 'like', 'b%');
})->get();

總結(jié)

使用ORM查詢數(shù)據(jù)可以得到model數(shù)據(jù)集,能更方便的處理數(shù)據(jù)。

laravel的where方法使用閉包可以有效的構(gòu)建嵌套的where子句(在這里,使用where的閉包相當(dāng)于在構(gòu)建sql的時(shí)候加一個(gè)括號(hào)

以上這篇laravel多條件查詢方法(and,or嵌套查詢)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Laravel5中實(shí)現(xiàn)模糊匹配加多條件查詢功能的方法
  • Laravel使用模型實(shí)現(xiàn)like模糊查詢的例子

標(biāo)簽:鷹潭 烏魯木齊 濟(jì)寧 赤峰 三亞 迪慶 山南 南寧

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《laravel多條件查詢方法(and,or嵌套查詢)》,本文關(guān)鍵詞  laravel,多,條件,查詢,方法,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《laravel多條件查詢方法(and,or嵌套查詢)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于laravel多條件查詢方法(and,or嵌套查詢)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    类乌齐县| 乃东县| 金华市| 施甸县| 江津市| 常宁市| 永顺县| 田林县| 珲春市| 乡宁县| 寿光市| 延寿县| 九龙县| 从化市| 五莲县| 德惠市| 桦川县| 西吉县| 长岛县| 遂溪县| 安宁市| 呼和浩特市| 金山区| 仁怀市| 五原县| 海林市| 武乡县| 贵德县| 古蔺县| 庆云县| 阜南县| 濉溪县| 龙井市| 鹤庆县| 桃江县| 龙南县| 融水| 池州市| 柘城县| 蓬安县| 伊通|