検索
ホームページバックエンド開発PHPチュートリアルThinkPHP 学習メモ (9) ThinkPHP の包括的なクエリ方法

ThinkPHP学習記 (9) Thinkphpの総合クエリメソッド

<?php /**
 * 普通查询
 * 	1.字符串形式
 * 	2.数组形式(推荐形式)
 * 		$user=M('user');
 * 		$data['username']='user';
 * 		$list=$user->where($data)->select();
 * 	3.对象形式
 * 		$user=M('user');
 * 		$condition=new stdClass();
 * 		$condition->username='user';
 * 		$list=$user->where($condition)->select();
 * 判断条件:(太多)查询表达式:5.3.
 *		eq(相等)、ne(不相等)、neq(不相等)、gt(大于)、lt(小于)、elt(小于等于)、
 *		le(小于等于)、gte(大于等于)、ge(大于等于)、
 *		like
 *		[not] between
 *		[not] in
 *		exp 执行标准sql语句
 * 区间查询
 * 组合查询
 * 复合查询
 * 统计查询
 * 定位查询
 * sql查询
 * 动态查询
 *
 */
class SelectAction extends Action{
	public function index(){
   		$user=M('user');
//		//1.1数组查询(可以使用查询表达式来设置获取范围)
//		//DB_LIKE_FIELDS=>'username,password';(自动进行模糊匹配)
//   		$data['username']=array('like','us%');
//   		$data['id']=array('between','0,10');
//   		$data['id']=array('not between',array('5','10'));
//   		$data['id']=array('in','5,8,10');
//   		$list=$user->where($data)->select();
//		$date['id']=array('exp','in(0,2,3,7)');
//		$date['createtime']=array('exp','createtime+1');
//   		$list=$user->where(array('id'=>1))->save($date);
//   		dump($list);
//   		//1.2对象形式
//   		$user=M('user');
//   		$condition=new stdClass();
//   		$condition->username='user';
//   		$list=$user->where($condition)->select();
//   		dump($list);

 		//2区间查询
//		$data['id']=array(array('gt',3),array('lt',10));
//		$data['id']=array(array('gt',3),array('lt',10),'or');
//		$data['id']=array(array('gt',3),array('lt',10),'and');
//		$data['username']=array(array('like','u%'),array('like','a%'),'or');
//   		$list=$user->where($data)->select();
//   		dump($list);

   		//3.组合查询
//   		$data['username']='user';
//   		$data['id']='8';
//   		$data['_logic']='or';//条件为or
//   		$data['_string']='idwhere($data)->select();
//   		dump($list);

   		//4.复合查询(idwhere($where)->select();
//   		dump($list);

   		//5.统计查询count\max\min\avg\sum
//   		$list=$user->where('id>5')->count('id');
//   		dump($list);
//   		$list=$user->max('createtime');
//   		dump($list);
//   		$list=$user->min('createtime');
//   		dump($list);
//   		$list=$user->avg('createtime');
//   		dump($list);
//   		$list=$user->sum('createtime');
//   		dump($list);

   		//6.定位查询getN();first();last();
//   		//6.1初始化
////   		$user=new AdvModel('user');
//		//6.1.2或者new一个ComModel继承AdvModel
//   		$user=new AdvModel('user');
//   		//直接返回结果当中的某条记录从0开始
//   		$list=$user->getN(0);
//   		dump($list);

   		//7.sql查询execute(更新和写入;有受影响行数无结果集)、query(用于查询)
//   		$list=$user->query('from tb_user order by id desc');
//   		dump($list);

   		//8.动态查询(方法后加上字段名getByUsername或者查询top)
   		$user=new AdvModel('user');
//   		$list=$user->getByUsername('user');
   		$list=$user->top3();
   		dump($list);
	}
}
?>

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
php如何实现Redis的List操作php如何实现Redis的List操作May 26, 2023 am 11:51 AM

List操作//从list头部插入一个值。$ret=$redis->lPush(&#39;city&#39;,&#39;guangzhou&#39;);//从list尾部插入一个值。$ret=$redis->rPush(&#39;city&#39;,&#39;guangzhou&#39;);//获取列表指定区间中的元素。0表示列表第一个元素,-1表示最后一个元素,-2表示倒数第二个元素。$ret=$redis->l

使用C#中的Array.Sort函数对数组进行排序使用C#中的Array.Sort函数对数组进行排序Nov 18, 2023 am 10:37 AM

标题:C#中使用Array.Sort函数对数组进行排序的示例正文:在C#中,数组是一种常用的数据结构,经常需要对数组进行排序操作。C#提供了Array类,其中有Sort方法可以方便地对数组进行排序。本文将演示如何使用C#中的Array.Sort函数对数组进行排序,并提供具体的代码示例。首先,我们需要了解一下Array.Sort函数的基本用法。Array.So

java中JSONArray互相转换List怎么实现java中JSONArray互相转换List怎么实现May 04, 2023 pm 05:25 PM

1:JSONArray转ListJSONArray字符串转List//初始化JSONArrayJSONArrayarray=newJSONArray();array.add(0,"a");array.add(1,"b");array.add(2,"c");Listlist=JSONObject.parseArray(array.toJSONString(),String.class);System.out.println(list.to

如何使用C#中的List.Sort函数对列表进行排序如何使用C#中的List.Sort函数对列表进行排序Nov 17, 2023 am 10:58 AM

如何使用C#中的List.Sort函数对列表进行排序在C#编程语言中,我们经常需要对列表进行排序操作。而List类的Sort函数正是为此设计的一个强大工具。本文将介绍如何使用C#中的List.Sort函数对列表进行排序,并提供具体的代码示例,帮助读者更好地理解和应用该函数。List.Sort函数是List类的一个成员函数,用于对列表中的元素进行排序。该函数接

简单明了的PHP array_merge_recursive()函数使用方法简单明了的PHP array_merge_recursive()函数使用方法Jun 27, 2023 pm 01:48 PM

在进行PHP编程时,我们常常需要对数组进行合并。PHP提供了array_merge()函数来完成数组合并的工作,不过当数组中存在相同的键时,该函数会覆盖原有的值。为了解决这个问题,PHP在语言中还提供了一个array_merge_recursive()函数,该函数可以合并数组并保留相同键的值,使得程序的设计变得更加灵活。array_merge

Java基础中List常用方法是什么Java基础中List常用方法是什么May 14, 2023 am 10:16 AM

一、List接口简介List是一个有序的集合、可重复的集合。它是继承Collection接口,在List集合中是可以出现重复的元素,可以通过索引(下标)来访问指定位置的元素。二、List常用方法&mdash;&mdash;voidadd(intindex,Obejctelement)方法1.voidadd(intindex,Obejctelement)方法是把element元素插入在指定位置,后面的元素往后移一个元素。2.voidadd(intindex,Obejctelemen

docker挂载目录权限问题怎么解决docker挂载目录权限问题怎么解决Feb 29, 2024 am 10:04 AM

在Docker中,挂载目录的权限问题通常可以通过以下方法解决:使用-v参数指定挂载目录时添加权限相关的选项。可以通过在挂载的目录后面添加:ro或:rw来指定挂载目录的权限,分别表示只读和读写权限。例如:dockerrun-v/host/path:/container/path:roimage_name在Dockerfile中定义USER指令来指定容器中运行的用户,以确保容器内部的操作符合权限要求。例如:FROMimage_name#CreateanewuserRUNuseradd-ms/bin/

Java中如何将数组转换为ListJava中如何将数组转换为ListApr 19, 2023 am 09:13 AM

一.最常见方式(未必最佳)通过Arrays.asList(strArray)方式,将数组转换List后,不能对List增删,只能查改,否则抛异常。关键代码:Listlist=Arrays.asList(strArray);privatevoidtestArrayCastToListError(){String[]strArray=newString[2];Listlist=Arrays.asList(strArray);//对转换后的list插入一条数据list.add("1"

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン