日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

ThinkPHP(3)SQL查询语句

發布時間:2025/3/13 php 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ThinkPHP(3)SQL查询语句 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ThinkPHP中對查詢語句,包含了基本的查詢方式、表達方式、快速查詢、區間查詢、組合查詢、SQL查詢、動態查詢和子查詢。

一、查詢方式

ThinkPHP提供了三種基本的查詢方式:字符串條件查詢、索引數組條件查詢和對象條件查詢。在大多情況下,推薦使用索引數組和對象方式作為查詢條件,因為會更安全。

1.使用字符串作為條件查詢

$user = M('user');

var_dump($user->where('id=1 AND user="姓名"')->select());

//最終生成的SQL語句

select * from 'user' where (id=1 AND user="姓名")

注意:where查詢方法里面只要包含條件即可,多個條件加上AND等連接符即可。

2.使用索引數組作為查詢條件

$user = M('user'); $condition['id'] = 1; $condition['user'] = 'name'; var_dump($user->where($condition)->select()); //最終生成的SQL語句 select * from 'user' where ('id'=1)AND('user' = 'name')

注意:索引數組查詢的邏輯關系是AND,如果想改變為OR,可以使用_logic定義查詢邏輯

基于上面的代碼增加如下一行:

$condition['_logic'] = 'OR'; //將默認AND改成OR

3.使用對象方式來查詢

$user = M('user'); $condition = new \stdClass(); $condition->id = 1; $condition->user = 'name'; var_dump($user->where($condition)->select()); //最終生成的SQL語句 select * from user where ('id' = 1) AND ('user' = 'name')

注意:stdClass類是php內置的類,可以理解為一個空類,在這里可以理解為把條件的字段作為成員保存到stdClass類里。而這里的'\'是將命名空間設置為根目錄,否則會導致當前目錄找不到此類。使用對象和數組查詢,效果是一樣的,可以互換。在大多數情況下,ThinPHP推薦使用數組形式更高效。

二、表達式查詢

對于那些要實現模糊判斷的查詢,比如大于、等于、小于之類的SQL查詢,可以使用表達式查詢方式。查詢表達式格式:$map['字段名'] = array('表達式','查詢條件');

注意:表達式不區分大小寫。

//EQ:等于(=)

$map['id'] = array('eq',1); ? //where為id=1

//NEQ:不等于(<>)

$map['id'] = array('neq',1); ? //where為id<>1

//GT:大于(>)

$map['id'] = array('gt',1); ? //where為id>1

//EGT:大于等于(>=)

$map['id'] = array('egt',1); ? //where為id>=1

//LT:小于(<)

$map['id'] = array('lt',1); ? //where為id<1

//ELT:小于等于(<=)

$map['id'] = array('elt',1); ? //where為id<=1

//[NOT]LIKE:模糊查詢

$map['user'] = array('like','%小%'); ? //where為like %小%

//[NOT]LIKE:模糊查詢的數組方式

$map['user'] = array('like',array('%小%','%大%'),'AND');

//生成的SQL

select * from 'user' where (('name' like '%小%' AND 'name' like '%大%'));

?

轉載于:https://www.cnblogs.com/sjxx/p/5626516.html

總結

以上是生活随笔為你收集整理的ThinkPHP(3)SQL查询语句的全部內容,希望文章能夠幫你解決所遇到的問題。

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