日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

thinkPHP5.0数据查询表达式生成技巧

發布時間:2025/3/15 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 thinkPHP5.0数据查询表达式生成技巧 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

thinkPHP的查詢表達式大揭秘

主要使用where(條件表達式)方法

語法一:where('字段','條件','值');

等于:EQ 解析為"="

不等于:NEQ 解析為"<>"

小于:LT 解析為"<"

小于等于: ELT 解析為"<="

大于:GT 解析為">"

大于等于:EGT 解析為">="

區間:BETWEEN 解析為 “BETWEEN * AND *”

不在區間:NOTBETWEEN 解析為 “NOTBETWEEN * AND *”

集合:IN 解析為 IN(*,*);

不在集合 : NOT IN 解析為 NOT IN(*,*)

字段值為NULL 和 NOT NULL??

//條件省略,默認為相等

$res=Db::table('data')->where('id',11) //等價于:where('id','=',11)

         ? ->fetchSql(true) //輸出SQL語句,

         ? ->select();

?

//完整的單值條件表達式

$res=Db::table('data')->where('id','EGT',11)? //等價于: where('id','>=',11)

          ->fetchSql(true)

          ->select();

//區間條件表達式

$res=Db::table('data')->where('age','BETWEEN',[18,35]) //between 18 and 35

          ->where('age','NOT BETWEEN',[18,35]) //not between 18 and 35

          ->fetchSql(true)

          ->select();

//集合條件表達式

$res=Db::table('data')->where('id','IN',[2,3,4])? //in(2,3,4)

          ->where('id','NOT IN',[2,3,5]) //not in(2,3,5)

          ->fetchSql(true)

          ->select();

?

//null值判斷,注意中間有“=”號的區別

$res=Db::table('Data')->where('node_name','NULL')? //找出該字段默認設置為NULL的數據

          ->where('node_name','=','NULL')? //找出改字段等于NULL字符串的數據

          ->fetchSql(true) //打印SQL

          ->select();

?

//like 或者 not like

$res=Db::table('Data')->where('name','LIKE','%php')? //模糊匹配以php結尾的字段

         ? ?->where('name','NOT LIKE','%php')

          ->where('node_name','=','NULL') //node_name的值為NULL

          ->fetchSql(true)

          ->select();

?

每個數組元素都是一個查詢條件,使用where()方法時,每個條件之間為AND關系,使用whereOr()方法為or

//AND

$res=Db::table('Data')->where([ 'id'=>['>',11], 'typeid'=>['BETWEEN',[13,20]] ]) ->fetchSql(true) ->select(); //SQL :select * from `Data` where `id` >11 AND `typeid`? BETWEEN 18 AND 20; //OR $res=Db::table('Data')->whereOr([ 'id'=>['EGT',11], 'age'=>['BETWEEN',[17,20]] ]) ->fetchSql(true) ->select(); //SQL:select * from `Data` where `id` >=11 OR `age` BETWEEN 17 AND 20 //簡單條件 $res=Db::table('Data')->where('id','EXP','>=10') ->select(); SQL : select * from `Data` where (`id`>=10) //復合條件 $res=Db::table('Data')->where('age','EXP','BETWEEN 20 AND 30') ->where(); SQL: select * from `Data` where (`age` BETWEEN 20 AND 30); $res=Db::table('Data')->where('id','EXP','>=10') ->where('age','>',30) ->whereOr('dept','市場部') ->select(); select * from `Data` where(`id`>=10) AND `age`>30 OR `dept`='市場部';

轉載于:https://www.cnblogs.com/ymdphp/p/10951469.html

總結

以上是生活随笔為你收集整理的thinkPHP5.0数据查询表达式生成技巧的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。