ホームページ >バックエンド開発 >PHPチュートリアル >ThinkPHP_PHP チュートリアルのクエリ スキルの概要

ThinkPHP_PHP チュートリアルのクエリ スキルの概要

WBOY
WBOYオリジナル
2016-07-13 10:31:11800ブラウズ

私は最近 thinkphp フレームワークを学び始めたばかりですが、Thinkphp の威力とパフォーマンスについてはここでは触れません。もちろん、thinkphp の強力なクエリ機能については説明しましょう。 , これは単なる紹介です。

1. where 条件を使用した通常のクエリ

1.文字列形式

$user=M('ユーザー');
$list=$user->where('id>5 and idselect();
$list=$user->where($data)->select();

2.配列形式

$user=M('ユーザー');
$list=$user->where(array('username'=>'www.phpernote.com'))->select();
$list=$user->where($data)->select();

3. オブジェクトフォーム

$user=M('ユーザー');
$a=新しいstdClass();
$a->username='www.phpernote.com';
$list=$user->where($a)->select();

4. クエリ式

EQ は

に等しい NEQ は
と等しくありません GT より大きい
EGT 以上
LT は
未満です ELT 以下
LIKE は SQL の like と同等です
[NOT] BETWEEN クエリ範囲
[NOT] IN クエリコレクション
EXP は、より複雑な状況を実現するために標準 SQL ステートメントを使用することを指します

構文形式: $data['フィールド名']=array('式です','クエリ条件');

例えば

$data['ユーザー名']='www.phpernote.com';

は実際には

を意味します

$data['ユーザー名']=array('eq','www.phpernote.com');

$data['ユーザー名']=array('like','peng%');

$list=$user->where($data)->select();

$data['ユーザー名']=array(array('like','p%'),array('like','h%'),'or');

$list=$user->where($data)->select();

2. 間隔クエリ

$user=M('ユーザー');

$data['id']=array(array('gt',20),array('lt',23),'and');
$list=$user->where($data)->select();

3. 組み合わせクエリ

$user=M('ユーザー');

$data['ユーザー名']='ペンヤンジエ';
$data['パスワード']=array('eq','pengyanjie');
$data['id']=array('lt',30);
$data['_logic']='または';
$list=$user->where($data)->select();
ダンプ($list);

4. 複合クエリ

$user=M('ユーザー');

$data['ユーザー名']=array('eq','pengyanjie');
$data['パスワード']=array('like','p%');
$data['_logic']='または';
$where['_complex']=$where;
$where['id']=array('lt',30);
$list=$user->where($data)->select();

と同等です

(id

5. 統計クエリ

echo $user->count();

echo '
';
echo $user->max('id');
echo '
';
echo $user->where('idmin('id');
echo '
';
echo $user->avg('id');
echo '
';
echo $user->sum('id');

6. ポジショニングクエリ

$user=new AdvModel('user');//高度なモデル AdvModel をインスタンス化します

//$user=M('user','CommonModel');//または CommonModel で AdvModel を継承します
$list=$user->order('id desc')->getN(2);//結果の 3 番目の項目を返します
$list=$user->order('id desc')->last();//最後のアイテムを返す
$list=$user->order('id desc')->first();//最初の項目に戻る

7. SQLクエリ

excute()は主に更新と書き込みに使用されます

$Model=new Model() // どのデータテーブルにも対応しないモデルオブジェクトをインスタンス化します

$Model->execute("think_user セット名 = 'thinkPHP' を更新 (ステータス = 1)");

query() は主にクエリに使用されます

$user=M();

$list=$user->query('select * from aoli_user order by id desc');
ダンプ($list);

8. 動的クエリ

$user=M('ユーザー');

$list=$user->getByusername('pengyanjie');
$list=$user->getByusername('pengyanjie');

$user=new AdvModel('user');

$list=$user->top5();//トップ 5 アイテム

興味がありそうな記事

  • thinkphpテンプレートのvolistループの最後のレコードの判定
  • thinkphp開発スキルのまとめ
  • phpでのMVCモード応用スキル
  • クエリのようなthinkphp
  • thinkphp アクションコントローラーシステムのまとめ定数
  • 中国語の文字列をインターセプトする Thinkphp の方法
  • ThinkPHP の自動検証と無効なソリューションの自動入力
  • ThinkPHP を使用する際に習得する必要があるデバッグ方法

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/764123.html技術記事最近、thinkphp フレームワークを学び始めたばかりですが、Thinkphp の能力とパフォーマンスについては触れません。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。