ホームページ >バックエンド開発 >PHPチュートリアル >ThinkPHP_PHP チュートリアルのクエリ スキルの概要
私は最近 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();
EQ は
に等しい
NEQ は
と等しくありません
GT より大きい
EGT 以上
LT は
未満です
ELT 以下
LIKE は SQL の like と同等です
[NOT] BETWEEN クエリ範囲
[NOT] IN クエリコレクション
EXP は、より複雑な状況を実現するために標準 SQL ステートメントを使用することを指します
例えば
$data['ユーザー名']='www.phpernote.com';
は実際には
を意味します
$data['ユーザー名']=array('eq','www.phpernote.com');$data['ユーザー名']=array('like','peng%');
$list=$user->where($data)->select();
$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();
と同等です
(id5. 統計クエリ
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)");
$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');
$list=$user->top5();//トップ 5 アイテム