多表查询经常使用到,但如何在thinkphp中实现多表查询呢,其实有三种方法。
1
2
3
4
5
6
7
8
9
10
11
12
|
// 1、原生查询示例: $Model = new Model();
$sql = 'select a.id,a.title,b.content from think_test1 as a, think_test2 as b where a.id=b.id ' . $map . ' order by a.id ' . $sort . ' limit ' . $p ->firstRow. ',' . $p ->listRows;
$voList = $Model ->query( $sql );
// 2、join()方法示例: $user = new Model( 'user' );
$list = $user ->join( 'RIGHT JOIN user_profile ON user_stats.id = user_profile.typeid' );
// 3、table()方法示例: $list = $user ->table( 'user1 a, user2 b' )->where( 'a.id = b.id' )
->field( 'name,sex' )->order( 'id desc' )->select();
|