table('think_blog blog, think_type type')" 2. Gunakan kaedah Sertai untuk membuat pertanyaan, dengan kod seperti "$Model ->join('work ON artist.id = work.artist_id')"."/> table('think_blog blog, think_type type')" 2. Gunakan kaedah Sertai untuk membuat pertanyaan, dengan kod seperti "$Model ->join('work ON artist.id = work.artist_id')".">

Rumah >rangka kerja php >ThinkPHP >Bagaimana untuk menanyakan berbilang data dalam thinkphp

Bagaimana untuk menanyakan berbilang data dalam thinkphp

藏色散人
藏色散人asal
2022-12-05 09:26:452162semak imbas

Cara untuk menanyakan berbilang data dalam thinkphp: 1. Gunakan kaedah Jadual untuk menanyakan berbilang jadual, dengan sintaks seperti "$Model->table('think_blog blog, think_type type')" 2. Gunakan kaedah Sertai untuk menanyakan Pertanyaan, kod seperti "$Model->join('work ON artist.id = work.artist_id')".

Bagaimana untuk menanyakan berbilang data dalam thinkphp

Persekitaran pengendalian tutorial ini: sistem Windows 7, ThinkPHP versi 5, komputer Dell G3.

Bagaimana untuk menanyakan berbilang data dalam thinkphp?

Pertanyaan berkaitan THINKPHP (pertanyaan berbilang jadual)

Pertanyaan berkaitan THINKPHP (pertanyaan berbilang jadual) boleh menggunakan kaedah table() atau kaedah gabungan , Sila lihat contoh:

1 Kaedah jadual: Tentukan nama jadual data yang akan dikendalikan Anda boleh menukar nama jadual data secara dinamik Anda perlu menulis nama penuh daripada jadual data, termasuk awalan Anda boleh menggunakan alias, contohnya:

$Model->Table('think_user user')
->where('status>1')
->select();
$Model->table('think_blog blog,think_type type')
->where('blog.typeid=type.id')
->field('blog.id as id,blog.title,blog.content,type.typename as type')
->order('blog.id desc' )
->limit(5)
->select();

Parameter kaedah Jadual menyokong rentetan dan tatasusunan:

$Model->Table(array('think_user'=>'user','think_group'=>'group'))
->where('status>1')
->select();

Kelebihan menggunakan definisi mod tatasusunan ialah ia dapat mengelakkan ralat akibat konflik antara nama jadual dan situasi kata kunci.

Nota: Jika kaedah jadual tidak ditakrifkan, jadual data yang sepadan atau ditakrifkan oleh model semasa akan diperoleh secara automatik secara lalai.

2. Kaedah Sertai: Sokong Sertai Pertanyaan Parameter rentetan dan tatasusunan sokongan kaedah Sertai, dan kaedah gabungan ialah satu-satunya kaedah yang boleh dipanggil berbilang kali dalam operasi yang koheren. . Contohnya:

$Model->join('work ON artist.id = work.artist_id')
->join('card ON artist.card_id = card.id')
->select();
//Left Join
$Model->table('user U')
->join('news N on U.id=N.cid')
->field('U.*,N.*')
->order('id desc')
->limit('8')
->findall();

Kaedah LEFT JOIN digunakan secara lalai Jika anda perlu menggunakan kaedah JOIN yang lain, anda boleh menukarnya kepada

$Model->join('RIGHT JOIN work ON artist.id = work.artist_id')
->select();
//Right Join
$Model->table('user U')
->join(array('right','news N on U.id=N.cid'))
->field('U.*,N.*')
->order('id desc')
->limit('8')
->findall();

. Jika parameter kaedah cantum menggunakan tatasusunan Jika ya, kaedah cantum hanya boleh digunakan sekali dan tidak boleh dicampur dengan kaedah rentetan.

$Model->join(array(' work ON artist.id = work.artist_id', 'card ON artist.card_id = card.id'))
->select()

Menggunakan kaedah operasi koheren ini boleh meningkatkan kejelasan kod dan kecekapan pembangunan pertanyaan data dengan berkesan.

Cara melihat pernyataan SQL untuk operasi berturut-turut:

echo $Model->getLastSql(); //打印一下SQL语句,查看一下

Contoh 2:

1

2.1, join()2 pertanyaan jadual
$list = $user->table('user_status stats, user_profile profile')->where('stats.id = profile.typeid')->field('stats.id as id, stats.display as display, profile.title as title,profile.content as content')->order('stats.id desc' )->select();

2.2, join() pertanyaan berbilang jadual
$user = new Model('user');
$list = $user->join('RIGHT JOIN user_profile ON user_stats.id = user_profile.typeid' );

3 > Pembelajaran yang disyorkan: "
        $list = $Form->join('think_sort ON think_form.sort_id = think_sort.sort_id' )->join('think_brand ON think_form.brand_id = think_brand.brand_id' )->select();
Tutorial Video thinkPHP

"

Atas ialah kandungan terperinci Bagaimana untuk menanyakan berbilang data dalam thinkphp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn