Operasi rantaian pangkalan data ThinkPHP6.0


. Pengenalpastian menyokong pelbagai panggilan


fungsi koheren

    jenis parameter yang disokong di mana*
  • digunakan untuk dan query CURD

    String, array dan objek
  • jadual
digunakan untuk mentakrifkan nama jadual data yang akan dikendalikan String dan tatasusunan halaman

1. Pertanyaan ungkapan

  • Ekspresi ialah syarat pernyataan SQL

  • Ungkapan tidak peka huruf besar/kecil

  • Ungkapan ditulis di mana

name digunakan untuk mentakrifkan nama jadual data yang akan dikendalikan String String String
digunakan untuk menentukan medan yang akan dipersoalkan (menyokong pengecualian medan) keputusan KuantitiString dan nombor
digunakan untuk halaman pertanyaan (akan ditukar kepada had secara dalaman)String dan nombor
Pertanyaan kaedah sama dengan tidak sama dengan > ;=<<=

=

<>


Lebih besar daripada atau sama dengan

kurang daripada
kurang daripada
<=
[TIDAK] SUKA pertanyaan kabur tidak) IN pertanyaan whereIn/whereNotIn
[NOT] NULL Medan pertanyaan Sama ada (bukan) NULLwhereNull/whereNotNull
. (=)

where$select = Db::table('shop_goods')->where('id','=','1')->select();

    print_r($select- > toArray());
# Tidak sama dengan (<>)

$select = Db::table('shop_goods')->where('id','<>' , '2')->select();

print_r($select->toArray());


# lebih besar daripada (>)

$select = Db::table('shop_goods' )->di mana('id','>','3')->select();

print_r($select->toArray());


# Lebih besar daripada atau sama ke (> ;=)

$select = Db::table('shop_goods')->where('id','>=','4')->select();

print_r( $select- >toArray());


# Kurang daripada (<)

$select = Db::table('shop_goods')->where('id','<', '5') ->select();

print_r($select->toArray());


# Kurang daripada atau sama dengan (<=)

$select = Db::table ('shop_goods')-> ;where('id','<=','6')->select();

print_r($select->toArray());


# Lagi di mana

$pilih + ;-& Gt; pilih (); );

print_r($select->toArray());


# NOT LIKE

$select = Db:: table('shop_goods')->where('title','not like ','%dress%')->select();

print_r($select->toArray());

# ANTARA

$select = Db::table('shop_goods') ->di mana('id','antara','6,10')->select();

print_r($select ->toArray());


# BUKAN ANTARA

$select = Db::table('shop_goods')->where('id','not between',[6,10]) ->select();

print_r($select->toArray( ));


# IN

$select = Db::table('shop_goods')->where('id' ,'in','4,7,10')->select( );

print_r($select->toArray());


# NOT IN

$select = Db::table('shop_goods')->where('id','not in',[4,7,10])->select();

print_r($select-> ;toArray());

2. Jadual data

1, jadual dan nama

# Mesti lengkapkan nama pangkalan data

$select = Db::table('shop_goods')->where('id' ,'10')->select();

print_r($select->toArray());

# Pangkalan data tidak mempunyai set awalan

$select = Db::name('shop_goods')- > di mana('id','11')->select();

print_r($select->toArray());

# Awalan tetapan pangkalan data, tiada akses awalan

$select = Db: :name ('list')->where('id','12')->select();

print_r($select->toArray());

2 Konfigurasi pangkalan data database.php

database.php

return [

    'connections'     => [

        'mysql' => [

            // 数据库表前缀

            'prefix'  => Env::get('database.prefix', 'shop_'),

        ]

    ]

];

三、返回值

1、field kembali [

                                                                                            prefix' => Env: :get('database.prefix', 'shop_'),
  • ]

  • ]
  • ];

3. Nilai pulangan

1 medan

utama kaedah medan Ia digunakan untuk mengenal pasti medan yang akan dikembalikan atau dikendalikan, yang boleh digunakan untuk pertanyaan dan operasi menulis Kaedah boleh menggunakan kaedah lapangan. '= & gt;' d'

# Tambah, hanya bidang ini boleh ditambah


# berbilang bidang $ data = [

'title' = & gt; harga' => 50,

' diskaun' => 8,

'tambah_masa' =>; -& GT; Medan ('Tajuk')

-& GT ('Harga')

-& GT; & gt; masukkan $data);

print_r($insert);

# Tanya semua medan, lebih cepat

$select = Db::table('shop_goods')

- ->field(true(true) )

// ->field('*')

- ->where('status',1)

- ->select();

print_r($select->toArray() );

2. withoutField

  • withoutField method mengecualikan medan dalam jadual data

Db::table('shop_goods')->withoutField('id')->select();
withoutField

  • withoutField 方法作用 排除数据表中的字段

Db::table('shop_goods')->fieldRaw('id,sum(price)')->select();

3、fieldRaw

  • fieldRaw 方法直接使用mysql函数

$select = Db::table('shop_goods')->select();
echo Db::getLastSql();

四、排序

1、order 方法用于对操作的结果排序或者优先级限制

  • 默认正序

  • asc 正序

  • desc 倒序

$select = Db::table('shop_goods')

            ->field('title,price,id')

            ->where('status',1)

            ->order('price','DESC')

            ->order('id','DESC')

            ->select();

print_r($select->toArray());

2、orderRaw 方法中使用mysql函数

$select = Db::table('shop_goods')

            ->field('title,price,id')

            ->where('status',1)

            ->orderRaw("field(title,'price','discount','stock')")

            ->select();

print_r($select->toArray());

五、分页

  • limit 3. fieldRaw

    • fieldRaw kaedah terus menggunakan fungsi mysql

    $select = Db::table('shop_goods')->fetchSql()->select();
    echo $select;

    4. Isih

    1. Kaedah order digunakan untuk mengisih atau mengutamakan hasil operasi

    • Tertib ke hadapan lalai

    • Tertib ke hadapan asc🎜🎜
    • 🎜desc tertib terbalik🎜🎜🎜🎜🎜$select = Db::table('shop_goods')🎜 🎜 - ->medan(' tajuk,harga,id')🎜🎜 - ->di mana('status',1)🎜🎜 - ->pesanan('harga','DESC')🎜🎜 - -> ;order('id','DESC') ; -& Gt; pilih (); fungsi mysql 🎜🎜🎜 $ pilih = db :: jadual ('barang_kedai') 🎜🎜 -& gt; Medan ('tajuk, harga, id') 🎜🎜 -& gt; & gt; orderRaw ("fIELD (tajuk, 'harga' 'diskaun', 'stok')")🎜🎜 ->select();🎜🎜print_r($select->toArray());🎜🎜

      5. Penomboran

      • Kaedah 🎜had digunakan terutamanya untuk menentukan bilangan pertanyaan dan operasi🎜🎜🎜 🎜🎜$select = Db::table('kedai_barang')🎜 🎜                                                                                                                                                                                                                                                                                                                                                                .; -& Gt; had (3)

        -& gt; )

        ->medan('tajuk,harga,id')

        - ->di mana('status',1)


        - ->pesanan('harga','DESC')

        - - >had(0, ( 'barang_kedai')

        - ->bidang('tajuk,harga,id')

        - ->di mana('status',1)

        - ->pesanan(' price','DESC')

        - >page(1,5)

        - ->select();

        print_r($select->toArray());

      6. Pertanyaan pengagregatan
    • page

      Kaedah pengagregatan Jika tiada data, lalainya ialah 0, pertanyaan pengagregatan boleh dipadankan dengan syarat pertanyaan lain

    kaedah

    fungsi

    fungsi

    parameter

    nama medan untuk dikira (pilihan)

    • maks

    • Dapatkan nilai maksimum, parameter ialah nama medan untuk dikira (diperlukan)
    min Dapatkan nilai minimum, parameter adalah medan nama untuk dikira (diperlukan) avg Dapatkan nilai purata, parameter akan dikira Nama medan (diperlukan) sum mendapat jumlah nombor, parameter ialah nama medan dikira (diperlukan)

    // Kira kuantiti, parameter ialah nama medan yang akan dikira (pilihan)

    $select = Db::table('shop_goods')->count();

    print_r($select);


    // Dapatkan nilai maksimum, parameter ialah nama medan untuk dikira (diperlukan)

    $select = Db::table('shop_goods')->max('id');

    print_r ($select);


    // Dapatkan nilai minimum, parameter ialah nama medan untuk dikira (diperlukan)

    $select = Db::table('shop_goods')->min('id ');

    print_r($ pilih);


    // Dapatkan nilai purata, parameter ialah nama medan untuk dikira (diperlukan)

    $select = Db::table('shop_goods')- >avg('id');

    print_r($select);


    // Dapatkan jumlah nombor, parameter ialah nama medan untuk dikira (diperlukan)

    $select = Db::table ('shop_goods')->sum('id');

    print_r($select);

    7 Cari dan menyusun contoh

    kod pengawal

    indeks fungsi awam(){

    =

    . 'mall';

    $login = 'Ouyang Ke';

    # Menu kiri

    $menu = Db::table('shop_menu')->where('fid',0)->select() ;

    $left = $menu->toArray() ;

    foreach($left as &$left_v){

    $left_v['lists'] = Db::table('shop_menu')->where ('fid',$left_v['id'])- >select();

    }

    # Senarai kanan

    $param = Request::param();

    if(isset($param[' status']) && $param ['status'] = = 1){

                          $dimana ['status'] = 1; menggunakan '          melalui menggunakan '     melalui menggunakan melalui menggunakan '     melalui menggunakan ' melalui ‐   ‐ ‐ ‐ ‐ a

                -> ;order('add_time DESC')

                                                                                                                                                                                                                                                             sebagai &$right_v){

    $right_v['cat'] = Db: :table('shop_cat')->where('id',$right_v['cat'])->value('name') ;

    }

    View::assign([

                                                                                                                                                                                                                                                                    keluar keluar keluar     '       keluar keluar   keluar keluar keluar keluar keluar keluar keluar keluar keluar keluar keluar keluar keluar keluar dari  O ke arah s over 's- s t-wU iw-s-sssssss.

            'kiri' => $kiri,

            'kanan' => $betul,

            'status' => isset($param['status']) ? $param['status'] : null

        ]);

        return View::fetch();="

    }

    view代码

    <form class="layui-form" method >

         <div class="layui-form-item" style="margin-top:10px;">

            <div class="layui-input-inline">

       pilih nama     < ="status">

                    <nilai pilihan="0" {jika $status==0}dipilih{/if}>全部</option>

              ;                                                                                                        status==1}dipilih{/if}>开启</option>

                    <nilai pilihan="2" {jika $status==2}dipilih{/if}>关闭</option> . /i>搜索</button>

         </div>

    </form>

    8. Contoh Paging

    kod pengawal

    indeks fungsi awam(){

    $title = 'mall';

    $login

    $login

    Menu kiri

    $menu = Db::table('shop_menu')->where('fid',0)->select();

    $left = $menu->toArray();

    foreach($left as &$left_v){

    $left_v['lists'] = Db::table('shop_menu')->where('fid',$left_v['id'])-> ();

    }

    # Senarai kanan

    $param = Request::param();

    if(isset($param['status']) && $param['status'] == 1 ){

    Gunakan menggunakan penggunaan menggunakan '] = 2;

    } else {

    Gunakan menggunakan menggunakan menggunakan menggunakan melalui menggunakan melalui keluar melalui keluar melalui keluar melalui keluar melalui - - - - untuk jumlah statistik

    $ count = Db::table('shop_goods')->where($where)->count();

    $list = Db::table('shop_goods')

    - -> )

    -& gt; pesanan ('tambah_masa desc')

    - & gt; ; Pilih ();

    $right = $list->toArray();

    foreach($right as &$right_v){

    $right_v['cat'] = Db::table('shop_cat') ->di mana( 'id',$right_v['cat'])-> $login,

                                                                                              gunakan menggunakan menggunakan menggunakan menggunakan             keluar keluar keluar melalui keluar melalui keluar melalui melalui ' s ‐ ‐ ‐ ‐ ‐ ‐‐ 'p' => $p,

                  'status' => isset($param['status']) ?       

    lihat kod

    <div class="layui-box layui-laypage layui-laypage-default">

    <a href="/index.php/Index/index?p={$p-1}&status={$status}" class="layui-laypage-prev {jika $p<=1}layui-disabled {/if}">Halaman sebelumnya</a>

    {untuk permulaan="0" end="$count"}

                                                                                     ="layui-laypage-curr">

                                                                                                                                                                                                                                                                                                                                                                                            </span>

    }</a>

                                                                                                                                                                                       $p>=$count}layui-disabled{/if}">Halaman seterusnya</a>

    </div>

    . halaman membelok kod html

    jumlah Dapatkan jumlah kuantiti

    kod pengawal

    $select = Db::table('shop_goods')->paginate(10);

    print_r($select);gema '< hr>';

      foreach($select as $v){
    •   print_r($v);echo '<hr>';paginate 内置了分页实现,要给数据添加分页输出功能变得非常简单

    • render 获取翻页html代码

    • total

      }
    • $select->render());echo ' <hr>';

    print_r('Total:'.$select->total());echo '<hr>';

    View:: tetapkan([

    'select' => $ select

    ]);

    return View::fetch();

    lihat kod

    <div>{$select|v}</di;

    css代码

    .penomboran {

         paparan: inline-block;

         padding-left: 0;

        jidar: 20px 0 jidar; 

     0 jidar

    }

    .penomboran > li {

        paparan: sebaris;

    }

    .penomboran > li > a,

    .penomboran > li > rentang {

         kedudukan: relatif;

         apungan: kiri;

         padding: 6px 12px;

         jidar-kiri: -1px;

        garis-tinggi: 1.43

    : 1

        hiasan teks : tiada;

         warna latar belakang: #fff;

        jidar: 1px pepejal #ddd;

    }

    .penomboran > li:anak pertama > a,

    .penomboran > li:anak pertama > rentang {

         jidar-kiri: 0;

         jidar-atas-kiri-jejari: 4px;

         jidar-bawah-kiri-jejari: 4px;

    }

    ;penomboran > li:anak terakhir > a,

    .penomboran > li:anak terakhir > rentang {

         sempadan-atas-kanan-jejari: 4px;

         sempadan-bawah-kanan-jejari: 4px;

    }

    .penomboran > li > a:hover,

    .penomboran > li > span:hover,

    .penomboran > li > a:fokus,

    .penomboran > li > span:focus {

         z-index: 2;

        color: #23527c;

         background-color: #eee;

         border-color: #ddd;

    }

    }

    .aktif > a,

    .penomboran > .aktif > span,

    .penomboran > .aktif > a:hover,

    .penomboran > .aktif > span:hover,

    .penomboran > .aktif > a:fokus,

    .penomboran > .aktif > span:focus {

         z-index: 3;

        color: #fff;

         cursor: default;

         background-color: #337ab7;

        border-color: #33}

    ab. > .kurang upaya > span,

    .penomboran > .kurang upaya > span:hover,

    .penomboran > .kurang upaya > span:focus,

    .penomboran > .kurang upaya > a,

    .penomboran > .kurang upaya > a:hover,

    .penomboran > .kurang upaya > a:fokus {

         warna: #777;

        kursor: tidak dibenarkan;

        warna latar belakang: #fff;

        warna sempadan: #ddd;

    }

    Contoh halaman templat

    path

    url pathpertanyaan parameter tambahan urlserpihan sauh url var_page pembolehubah paging

    kod pengawal

    indeks fungsi awam(){

    $title = 'Mall';

    $login = 'Ouyang Ke';

    # Menu kiri

    $menu = Db::table('shop_menu' ->di mana('fid',0)->pilih();

    $left = $menu->toArray();

    foreach($left as &$left_v){

    $left_v[ ' lists'] = Db::table('shop_menu')->where('fid',$left_v['id'])->select();

    }

    # Senarai kanan

    $ param = Permintaan::param();

    if(isset($param['status']) && $param['status'] == 1){

    $where['status'] = 1;

    }else if(isset($param['status']) && $param['status'] == 2){

              $where['status'] = 2;

        } else{

                      $ di mana

    }

    $p = isset($param['p']) ? $param['p'] : 1;

    # thinkphp disertakan dengan paging

    $list = Db::table('shop_goods' )

                                                                                                                                                                                                                                                                        ([

                                                                                                                                                                                                                                                                                                                 ' )->di mana('id',$right_v['cat'])->value( 'nama');

    }

    Lihat :: tetapkan ([

    'tajuk' = & gt; $ jadual,

    'log masuk' = & gt; $ log masuk,

    'kiri' = & gt; $ kiri;

    'kanan' = & gt; $ kanan;;

    11. Penyahpepijatan SQL

    • getLastSql Keluarkan penyataan sql yang terakhir dilaksanakangetLastSql 输出上次执行的sql语句

    • getLastSql 方法只能获取最后执行的 SQL 记录

    // 启动事务
    Db::startTrans();
    $data = ['cat'=>'1','title'=>'日系小浪漫与温暖羊毛针织拼接网纱百褶中长收腰连衣裙','price'=>'1598.35','add_time'=>1576080000];
    $insert = Db::table('shop_goods')->insert($data);
    if(empty($insert)){
        // 回滚事务
        Db::rollback();
    }else{
        // 提交事务
        Db::commit();
    }
    • fetchSql

    • getLastSql kaedah executs SQL🜜 hanya boleh dieksekusi kaedah
      Db::transaction(function () {
          $data = ['cat'=>'1','title'=>'日系小浪漫与温暖羊毛针织拼接网纱百褶中长收腰连衣裙','price'=>'1598.35','add_time'=>1576080000];
          $insert = Db::table('shop_goods')->insert($data);
      });

    fetchSql mengembalikan secara langsung SQL semasa tanpa melaksanakan
    • $select = Db::table('shop_goods')
                  ->field('title,price,id')
                  ->where('status',1)
                  ->order('price','DESC')
                  ->select();
      if($select->isEmpty()){
          echo '未查询到数据';
      }else{
          print_r($select->toArray());
      }
    • 12. Konfigurasikan pangkalan data secara dinamik

    pangkalan data direktori fail config

    kembali

    php direktori kembali

    .

                           'sambungan'                                                                                                                                                   jenis ', 'mysql'),

                                                                  'nama hos'                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

                                                                                                                   ' => Env::get('database .Password ',' ROOT '),

    // port

    ' hostport '= & gt; env :: get (' database.hostport ',' 3306 '),

    // parameter sambungan pangkalan data

    ' params '' =>

                                                                                                                                                                                                                                                                                   

                  'awalan '= & Gt; env :: dapatkan (' database.prefix ',' shop _ '),

    // kaedah penempatan pangkalan data: 0 tertumpu (pelayan tunggal), 1 diedarkan (pelayan utama)

    ' deploy '= > ,

    = & gt; memerlukan garis berat yang terputus

    ' break_reconnect '= & gt            // 监听SQL

                'trigger_sql'    ;              benar开启字段缓存

                'fields_cache'      => palsu,

                // 字段缓存路径

                'schema_cache_path' => app()->getRuntimePath() .

    BUAT JADUAL `pengguna_kedai` (

    `uid` int( 10) tidak ditandatangani NOT NULL AUTO_INCREMENT ULASAN 'User ID',

    `akaun` varchar(50) BUKAN NULL ULASAN 'Akaun',

    `kata laluan` char(32) BUKAN NULL ULASAN 'Kata Laluan',

    (50) NOT NULL ULASAN 'Nama',

    `status` tinyint(1) unsigned NOT NULL DEFAULT '1' ULASAN 'Status 1 on 2 off',

    `add_time` int(10) unsigned NOT NULL ULASAN 'Tambah masa',

    KUNCI UTAMA (`uid`)

    ) ENGINE=MyISAM AUTO_INCREMENT=3 CHARSET DEFAULT=utf8mb4 COMMENT='Backend administrator';

    >konfigurasi sambungan pangkalan data secara dinamik maklumat

    Db::connect('ouyangke')->table('shop_user')->select();

      connect kaedah diperlukan Dipanggil pada permulaan pertanyaan, dan mesti diikuti dengan kaedah pertanyaan, jika tidak, beberapa pertanyaan mungkin gagal atau sambungan pangkalan data lalai masih boleh digunakan
    • 13. Operasi rantaian WHRER (tidak biasa digunakan)

      • Sama seperti fungsi ungkapan pertanyaan, ThinkPHP menyediakan kaedah pertanyaan pantas berikut

        .
      Pertanyaan kabur
    Rentetan WatakStringStringNotlike query StringwhereIn* IN pertanyaanstringwhereNotIn*Not in IN querystringwhereNull*Soal sama ada medan itu NULLdi manamedan pertanyaan Bukankah NULLStringwhereExists*WUJUD pertanyaanString. Pertanyaan ungkapan, menyokong sintaks SQLFIND_IN_SET pertanyaanwhereFindInSet* digunakan untuk rentetan secara langsung
    whereNotLike*Fuzzy query
    whereBetween*interval query
    String whereExp*
    StringwhereFindInSet*
    String
    FIND_IN_SET pertanyaanString
    Watak Lidi

    14. Operasi rantai lain (tidak biasa digunakan)

    digunakan untuk mentakrifkan data semasa strict digunakan untuk menetapkan sama ada untuk mengesan dengan ketat sama ada nama medan wujud Nilai Boolean kumpulan digunakan untuk sokongan kumpulan untuk pertanyaan rentetan rentetan digunakan untuk mempunyai untuk mempunyai StringString dan tatasusunan berbilang parameter komen untuk komen SQL StringBoolean kaedah untuk menetapkan tambahan pertanyaan semasa ialah pertanyaan prosedur tersimpan Nilai Booleanmaster digunakan untuk menetapkan pelayan induk untuk membaca data Nilai Boolean view* digunakan untuk pertanyaan paparan tatasusunan

    15. Operasi transaksi

    • EnjinInnoDB menyokong pemprosesan transaksi, MyISAM tidak menyokong pemprosesan transaksiInnoDB引擎支持事务处理,MyISAM不支持事务处理

    rrreee
    • transaction 方法操作数据库事务,当闭包中的代码发生异常会自动回滚

    rrreee

    十六、数据集

    • 数据库通过select查询,得到的数据集对象

    • 返回的数据集对象是thinkCollection

    rreee

    🎜🎜< Kaedah kod>transaksi mengendalikan transaksi pangkalan data Apabila pengecualian berlaku dalam kod dalam penutupan, ia akan melancarkan semula secara automatik🎜rrreee🎜16 Set data🎜🎜🎜Pangkalan data disoal melalui pilih Objek dataset 🎜🎜🎜Objek dataset yang dikembalikan ialah thinkCollection, yang menyediakan penggunaan yang sama seperti tatasusunan, dan juga merangkum beberapa kaedah tambahan🎜. Tukar kepada tatasusunan
    Operasi berterusan Fungsi Jenis parameter yang disokong
    alias
    pertanyaan
    sertai*Untuk menyertai sokongan untuk pertanyaan
    union*Untuk sokongan kesatuan untuk pertanyaan dan rentetan
    berbeza berbeza sokongan untuk pertanyaan boolean
    kunci mekanisme kunci untuk pangkalan data boolean
    cache untuk cache pertanyaan
    force digunakan untuk pengindeksan paksa set data String
    Partition digunakan untuk menetapkan maklumat partition Array String
    FailException digunakan untuk menetapkan sama ada data tidak dipersoalkan atau tidak dibuang Pengecualian Nilai Boolean
    jujukan digunakan untuk menetapkan nama jujukan kenaikan automatik rentetan
    menggantikan Boole
    Bertukar kunci dan nilai dalam data7 bersilang Bandingkan tatasusunan dan kembalikan persimpangan 8 kunci Kembalikan semua nama kunci dalam data pop Padam elemen terakhir dalam data 10 shift Padam elemen pertama dalam data17 18 🜎isih pesanan Tapis elemen dalam tatasusunan berdasarkan keadaan medanSuka elemen penapis pertanyaanIN pertanyaan dan tapis elemen dalam tatasusunanNot IN pertanyaan dan tapis unsur-unsur dalam tatasusunan di mana tapis Between elemen dalam tatasusunanNot Between query menapis elemen dalam array
    3 semua semua Data
    4 cantum Gabung data lain
    5 berbeza Bandingkan tatasusunan dan pulangkan perbezaan
    11 Unshift Sert elemen pada permulaan data
    12 push insert elemen pada akhir
    13 reduce Bly menggunakan fungsi penyesuaian pengguna, pulih sebagai Tatasusunan rentetan
    14 terbalik Data disusun semula dalam susunan terbalik
    15 ​​​​ketulan Data dipisahkan kepada berbilang blok data
    setiap Lakukan panggilan balik untuk setiap elemen data
    penapis Gunakan fungsi panggil balik untuk menapis elemen dalam data
    lajur semula lajur yang ditentukan
    Isih data 20
    Nyatakan pengisihan medanKocok data se fungsi panggil balik untuk memproses Elemen tatasusunan dalam
    24 di mana
    25 di manaSuka
    26 Tidak suka elemen 26 Tidak Suka
    27 whereIn
    28 whereNotIn
    29
    30 whereNotBetween
    rrreee

    Persediaan: Lakukan pertanyaan set data dalam model, dan semua objek set data akan dikembalikan, tetapi kaedah yang digunakan ialah thinkmodelCollection类 (diwarisi daripada thinkCollection), tetapi penggunaannya adalah konsisten.