<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 查詢表達式 ## 查詢表達式 查詢表達式支持大部分的SQL查詢語法,也是`ThinkPHP`查詢語言的精髓,查詢表達式的使用格式: ``` where('字段名','表達式','查詢條件'); whereOr('字段名','表達式','查詢條件'); ``` `5.1`還支持新的查詢方法 ``` whereField('表達式','查詢條件'); whereOrField('表達式','查詢條件'); ``` > `Field`使用字段的駝峰命名方式。 表達式不分大小寫,支持的查詢表達式有下面幾種: 表達式含義快捷查詢方法=等于<>不等于>大于>=大于等于<小于<=小于等于LIKE模糊查詢`whereLike/whereNotLike`\[NOT\] BETWEEN(不在)區間查詢`whereBetween/whereNotBetween`\[NOT\] IN(不在)IN 查詢`whereIn/whereNotIn`\[NOT\] NULL查詢字段是否(不)是NULL`whereNull/whereNotNull`\[NOT\] EXISTSEXISTS查詢`whereExists/whereNotExists`\[NOT\] REGEXP正則(不)匹配查詢(僅支持Mysql)\[NOT\] BETWEEM TIME時間區間比較whereBetweenTime> TIME大于某個時間`whereTime`< TIME小于某個時間`whereTime`>= TIME大于等于某個時間`whereTime`<= TIME小于等于某個時間`whereTime`EXP表達式查詢,支持SQL語法`whereExp`表達式查詢的用法示例如下: ## 等于(=) 例如: ``` Db::name('user')->where('id','=',100)->select(); ``` 和下面的查詢等效 ``` Db::name('user')->where('id',100)->select(); ``` 最終生成的SQL語句是: ``` SELECT * FROM `think_user` WHERE `id` = 100 ``` ## 不等于(<>) 例如: ``` Db::name('user')->where('id','<>',100)->select(); ``` 最終生成的SQL語句是: ``` SELECT * FROM `think_user` WHERE `id` <> 100 ``` ## 大于(>) 例如: ``` Db::name('user')->where('id','>',100)->select(); ``` 最終生成的SQL語句是: ``` SELECT * FROM `think_user` WHERE `id` > 100 ``` ## 大于等于(>=) 例如: ``` Db::name('user')->where('id','>=',100)->select(); ``` 最終生成的SQL語句是: ``` SELECT * FROM `think_user` WHERE `id` >= 100 ``` ## 小于(<) 例如: ``` Db::name('user')->where('id','<',100)->select(); ``` 最終生成的SQL語句是: ``` SELECT * FROM `think_user` WHERE `id` < 100 ``` ## 小于等于(<=) 例如: ``` Db::name('user')->where('id','<=',100)->select(); ``` 最終生成的SQL語句是: ``` SELECT * FROM `think_user` WHERE `id` <= 100 ``` ## \[NOT\] LIKE: 同sql的LIKE 例如: ``` Db::name('user')->where('name','like','thinkphp%')->select(); ``` 最終生成的SQL語句是: ``` SELECT * FROM `think_user` WHERE `name` LIKE 'thinkphp%' ``` `like`查詢支持使用數組 ``` Db::name('user')->where('name','like',['%think','php%'],'OR')->select(); ``` 實際生成的SQL語句為: ``` SELECT * FROM `think_user` WHERE (`name` LIKE '%think' OR `name` LIKE 'php%') ``` 為了更加方便,應該直接使用`whereLike`方法 ``` Db::name('user')->whereLike('name','thinkphp%')->select(); Db::name('user')->whereNotLike('name','thinkphp%')->select(); ``` ## \[NOT\] BETWEEN :同sql的\[not\] between 查詢條件支持字符串或者數組,例如: ``` Db::name('user')->where('id','between','1,8')->select(); ``` 和下面的等效: ``` Db::name('user')->where('id','between',[1,8])->select(); ``` 最終生成的SQL語句都是: ``` SELECT * FROM `think_user` WHERE `id` BETWEEN 1 AND 8 ``` 最快捷的查詢方法是: ``` Db::name('user')->whereBetween('id','1,8')->select(); Db::name('user')->whereNotBetween('id','1,8')->select(); ``` ## \[NOT\] IN: 同sql的\[not\] in 查詢條件支持字符串或者數組,例如: ``` Db::name('user')->where('id','in','1,5,8')->select(); ``` 和下面的等效: ``` Db::name('user')->where('id','in',[1,5,8])->select(); ``` 最終的SQL語句為: ``` SELECT * FROM `think_user` WHERE `id` IN (1,5,8) ``` 最快捷的查詢方法是: ``` Db::name('user')->whereIn('id','1,5,8')->select(); Db::name('user')->whereNotIn('id','1,5,8')->select(); ``` > `[NOT] IN`查詢支持使用閉包方式 ## \[NOT\] NULL : 查詢字段是否(不)是`Null`,例如: ``` Db::name('user')->where('name', null) ->where('email','null') ->where('name','not null') ->select(); ``` 實際生成的SQL語句為: ``` SELECT * FROM `think_user` WHERE `name` IS NULL AND `email` IS NULL AND `name` IS NOT NULL ``` 如果你需要查詢一個字段的值為字符串`null`或者`not null`,應該使用: ``` Db::name('user')->where('title','=', 'null') ->where('name','=', 'not null') ->select(); ``` 推薦的方式是使用`whereNull`和`whereNotNull`方法查詢。 ``` Db::name('user')->whereNull('name') ->whereNull('email') ->whereNotNull('name') ->select(); ``` ## EXP:表達式 支持更復雜的查詢情況 例如: ``` Db::name('user')->where('id','in','1,3,8')->select(); ``` 可以改成: ``` Db::name('user')->where('id','exp',' IN (1,3,8) ')->select(); ``` `exp`查詢的條件不會被當成字符串,所以后面的查詢條件可以使用任何SQL支持的語法,包括使用函數和字段名稱。 ## 動態查詢 對于上面的查詢表達式,可以使用動態查詢方法進行簡化,例如: ``` Db::name('user')->where('id','>=',100)->select(); ``` 可以簡化為: ``` Db::name('user')->whereId('>=',100)->select(); ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看